Monday
Git 명령어 상황별 정리 본문
참고 도서 : 박미정의 깃 & 깃허브 입문
실습 사이트 추천 : https://learngitbranching.js.org/?locale=ko
사용하면서 명령어 목록을 수정할 예정입니다.
1. Git 설정
명령어 | 사용 시기 | 명령 형식 |
git init | 지역 저장소 생성 | git init |
git config user.name git config user.email |
프로젝트 별 지역 사용자 등록 | git config user.name "사용자 이름" git config user.email "이메일 주소" |
git config --global user.name git config --global user.email |
전체 프로젝트를 위한 사용자 등록 | git config --global user.name "사용자 이름" git config --global user.email "이메일 주소" |
git remote add | 원격 저장소의 주소 저장 및 별명 생성 | git remote add "별칭" "원격 저장소 주소" |
git config init.defaultBranch | 기본 브랜치 이름 설정 | git config --global init.defaultBranch "브랜치 이름" |
git config list | 깃 관련 설정 내용 보기 | git config list |
2. Git 변경 관리
명령어 | 사용 시기 | 명령 형식 |
git add | 커밋에 포함될 파일을 스테이징에 등록 | git add "파일 이름" |
git status | 현재 프로젝트의 파일 상태 확인 | git status |
git commit | 1) 새로운 커밋 생성 2) 기존 커밋 수정 3) 기존 커밋에 수정된 변경 내용 포함 4) 기존 커밋 저자 수정 |
1) git commit 2) git commit --amend git commit --amend -m "수정 커밋 내용" 3) git add "수정 or 추가할 파일" git commit --amend --no-edit 4) git commit --amend author "사용자이름 <메일>" |
git log | 1) 커밋 내역 확인 2) 커밋 내역 파일 단위 확인 3) 커밋 내역 최근 N개 보기 4) 커밋 내역 커스텀 형식으로 보기 5) 커밋 내역 그래프 형태로 보기 |
1) git log 2) git log -p 3) git log -N 4) git log --pretty=[option] 5) git log --pretty=oneline --graph |
git push | 원격 저장소에 커밋 반영 | git push "원격 저장소 별명" "지역 저장소 브랜치" |
git clone | 원격 저장소 복제 | git clone "원격 저장소 주소" ["저장할 다른 이름"] |
git remote update | 원격 저장소 상태 갱신 | git remot update |
3. Git 협업 관련
명령어 | 사용 시기 | 명령 형식 |
git branch | 1) 브랜치 생성 2) 지역 / 원격 저장소 브랜치 모두 보기 3) 브랜치 삭제 4) 지역 저장소 브랜치만 보기 5) 원격 저장소 브랜치만 보기 6) 지역 저장소 브랜치를 최신 커밋과 보기 |
1) git branch "브랜치 이름" 2) git branch -a 3) git branch -d "브랜치 이름" 4) git branch [-l] 5) git branch -r 6) git branch -v |
git checkout | 1) 사용할 브랜치로 이동 2) 브랜치 생성하고 생성한 브랜치로 이동 3) 원격 저장소에서 만든 브랜치를 지역 저장소에 생성 및 이동 |
1) git checkout "브랜치 이름" 2) git checkout -b "생성 할 브랜치 이름" 3) git checkout -t "원격 저장소 브랜치 이름" |
git push origin -d | 원격 저장소의 브랜치 삭제 | git push origin -d "브랜치명" |
git merge | 브랜치를 하나로 합칠 때 사용 1) 기준 브랜치(=새로운 브랜치가 생성 될 때의 기준 브랜치)의 변경사항이 없을 때 기준 브랜치에 변경 사항이 추가만 됨(fast-forward) 2) 기준 브랜치에 변경 사항이 생겼을 때, 새로운 커밋과 함께 생성됨(merge commit) |
1) git checkout "기준 브랜치명" 2) git merge "변경 사항이 생긴 브랜치명" |
git merge --abort | merge 작업 후 오류가 났을 때 이전 상태로 되돌리는 명령어 | git merge --abort |
git pull | 원격 저장소에서 변경 내역 가져와서 자동으로 병합까지 진행 | git pull "원격 저장소 명칭" "원격 저장소 브랜치" |
git fetch | 원격 저장소에서 변경 내역만 가져오고 병합은 자동적으로 진행되지 않음 | git fetch "원격 저장소 명칭" "원격 저장소 브랜치" |
git reset | 이전 커밋으로 작업 브랜치의 최종 커밋을 변경할 때 사용 | git reset "이전 커밋 체크섬" |
git revert | 변경 사항을 되돌리는 커밋 생성할 때 사용 | git revert "되돌리려는 커밋 체크섬" |
4. Git 고급 기능
명령어 | 사용 시기 | 명령 형식 |
git cherry-pick | 다른 브랜치의 커밋을 내가 작업하고 있는 브랜치에 추가할 때 사용 | git cherry-pick "추가하려는 커밋 체크섬" |
git rebase | 브랜치 커밋 이력을 재정렬할 때 사용(특정 브랜치의 커밋 이력을 기준으로 작업 브랜치의 커밋 이력을 재정렬할 때 사용) | git checkout "작업 브랜치" git rebase "재정렬을 위한 기준 브랜치" |
Comments