[TIL]git 명령어

이승훈·2022년 4월 13일

TIL

목록 보기
1/3

git 명령어 모음

저장소 생성

git init

  • .git 하위 디렉토리 생성 (폴더 생성후 명령 실행시 새 git 저장소 생성.
  • 저장소 복제

    $ git clone <https:.. URL>

    • 기존의 소스 코드 다운로드/복제

    $ git clone /로컬/저장소/경로

    • 로컬 저장소 복제

    $ git clone 사용자명@호스트:/원격/저장소/경로

    • 원격 서버 저장소 복제

    커밋

    $ git add <파일명> or .

    • 해당파일을 준비영역으로 전송

    $ git commit -m "커밋 메세지"

    • 깃 저장소 내 파일 저장

    $ git commit -am "커밋 메세지"

    • 커밋에 파일 add 및 커밋 생성(1회라도 add된 파일에 한해서 작동)

    $ git commit --amend

    • 전에 커밋한 커밋 메세지 수정

    $ git status

    • 파일 상태 확인

    $ git reset

    • 파일 add한거 리셋

    Branch

    $ git branch

    • 브랜치 목록

    $ git branch <브랜치명>

    • 브랜치 생성

    $git branch -d <브랜치>

    • 브랜치 삭제

    $ git checkout <브랜치>

    • 해당 브랜치로 이동

    $ git checkout -b <브랜치>

    • 해당 브랜치로 이동 및 브랜치 생성

    $ git checkout <커밋hash값>

    • git log에서 확인한 hash값을 통해 과거의 커밋으로 돌아가 과거 파일 내용 확인 가능

    merge

    $ git merge <브랜치>

    • 현재 브랜치에 해당 브랜치 병합

    $ git diff <브랜치 이름> <다른 브랜치 이름>

    • 브랜치 내용 비교

    $ git branch --merged

    • merge된 branch 확인

    충돌시 해결법

    1. git status로 어떤 파일 충돌인지 확인
    2. 충돌 파일 수정 후 git add, commit후
    3. Merge할 브랜치에서 다시 Merge

    log

    $ git log

    • 현재 브랜치의 히스토리 확인

    $ git log --graph

    • 히스토리 그래프로 확인

    $ git log -p <-숫자>

    • 상위 n개의 commit의 수정 결과 보여줌

    $ git log --stat

    • 어떤 파일이 commit에서 수정되고 변경되었는지, 파일 내 라인이 추가되거나 삭제되었는지 확인

    $ git log --pretty=online

    • 각 commit을 한 줄로 출력

    $ git log -S <내용>

    • 코드에서 추가되거나 제거된 내용중 내용이 포함되어 있는지 검사

    return

    $ git checkout --<파일명>

    • 로컬 변경사항 변경전으로 되돌림

    remote

    $ git remote add <HEAD명> <주소>

    • 원격저장소 연결

    $ git remote remove <HEAD명>

    • 원격저장소 연결 삭제

    $ git remote -v

    • 연결된 원격저장소 확인

    push

    $ git push <HEAD명> <브랜치명>

    • 원격저장소로 커밋 내용 푸쉬

    pull

    $ git pull <HEAD명> <브랜치명>

    • 로컬로 원격저장소 내용 병합

    $ git fetch

    • 원격저장소에서 데이터 가져오지만 병합 X 따로 병합 해줘야함

    Soft

    $ git reset --soft HEAD~

    • 예전 버전으로 돌아간다. (commit 수정시 사용)

    rebase

    $ git rebase <브랜치명>

    • 공통된 부모까지 commit을 가져와 브랜치 옆에 이어붙인다.
    profile
    개발자 지망생

    0개의 댓글