Git 명령어
1. 시작.
git init
2. 현재 브랜치 이름 변경.
git branch -m <바꿀 브랜치 이름>
ex) git branch -m main
3. 연결.
git remote add <원격 저장소 이름> <원격 저장소 주소>
ex) git remote add origin https://github.com/User/example.git
4. 원격 저장소 연결 상태 확인.
git remote -v
5. 원격 저장소 코드 가져와서 병합.
git pull <원격 저장소 이름> <가져올 원격 저장소 브랜치>
ex) git pull origin main
-f : 원격 저장소의 이름과 브랜치를 기억하여 다음 번에 간단히 git pull로도 동일한 명령 실행.
6. 스테이지된 파일 확인.
git status
7. 스테이지에 올릴 파일 등록.
git add <스테이지에 올릴 파일>
ex) git add .
. : 전체 파일.
8. 변경 사항 커밋.
git commit -m <'커밋 메시지'>
ex) git commit -m 'first commit'
-a : 추적 중인 파일들에 대해 스테이징을 자동으로 실행하고 커밋.
9. 원격 저장소에 업로드.
git push <원격 저장소 이름> <업로드 할 원격 저장소 브랜치>
ex) git push origin main
-f : 원격 저장소의 이름과 브랜치를 기억하여 다음 번에 간단히 git push로도 동일한 명령 실행.
10. 커밋 로그 확인.
git log
--oneline : 한 줄로 간략히.
--graph : 커밋 그래프 구조를 시각적으로 표시.
11. 특정 커밋으로 이동.
git checkout <이동할 커밋 해시>
ex) git checkout 3bb45d1
12. 특정 커밋으로 이동한 상태에서 빠져나오기.
git checkout <브랜치 이름>
ex) git checkout main
- : 마지막으로 체크아웃한 브랜치로.
13. 현재 작업과 마지막 커밋의 차이 확인.
git diff <파일명>
ex) git diff src/main.js
14. 특정 커밋으로 되돌리기.
git reset <되돌릴 커밋 해시>
ex) git reset --hard 3bb45d1
--mixed : 스테이징한 파일을 전부 내리지만 현재 작업은 유지.
--hard : 스테이징한 파일을 전부 내리고 현재 작업도 삭제.
15. 추적 해제.
git rm --cached <파일명>
ex) git rm --cached test.txt
-r: 디렉터리.
ex) git rm --cached -r test
16. 유니코드 문자를 그대로 표시 - 한글 깨짐 방지.
git config --global core.quotepath false
17. 커밋 수정 과정.
1) 인터랙티브 모드 실행.
git rebase -i
--root: 전체 목록.
--HEAD~[화면에 보일 커밋 메시지 수]
ex) git rebase -i --root
ex) git rebase -i --HEAD~50
2) 커밋 pick 키워드를 drop, reword 등으로 변경 후 종료.
3) 충돌 해결(git checkout --theirs . 또는 git checkout --ours . 또는 직접 수정).
4) 추적(git add .)
5) rebase 계속 진행.
git rebase --continue
6) rebase 중단 후 롤백.
git rebase --abort
18 . 원격 저장소 변경.
git remote set-url <원격 저장소 이름> <원격 저장소 주소>
ex) git remote set-url origin https://github.com/hn250424/example.git
19. 브랜치 목록.
git branch
* 로컬
-r: 원격
git branch -r
* 원격
20. 브랜치 이동.
git checkout
-b: 현재 브랜치 기준으로 히스토리 복사 & 생성 후 이동.
ex) git checkout -b nb
--orphan: 커밋 히스토리 없이 복사 & 생성 후 이동.
ex) git checkout --orphan nb