본문 바로가기

Develop/Git

Git 명령어 정리(내가 자주 사용하는)

git init : 저장소 초기화 (신규 프로젝트인 경우) 


git status : 파일 상태 확인


git remote add origin <원격저장소URL> : 원격 저장소 연결 (팀 저장소와 연결) 


git branch : 현재 로컬 브랜치 목록을 보여줍니다. 현재 활성화된 브랜치에는 [*]표시가 붙습니다.

git branch -a : 로컬 브랜치와 원격 브랜치 목록을 모두 보여줍니다.

git branch -r : 원격 브랜치 목록만 보여줍니다.

git branch -v : 각 브랜치의 최신 커밋 메시지를 함께 볼 수 있습니다.

git branch -m "새로운브랜치이름" : 현재 브랜치 이름 변경

git branch -m "기존브랜치이름" "새로운브랜치이름" : 다른 브랜치의 이름을 변경하려면 기존 브랜치 으름과 새 브랜치 이름을 모두 지정합니다.
#TIP
#- 이름변경 명령어 실행 전, git switch(checkout)로 변경하려는 브랜치로 이동하는 것이 좋습니다.
#- 원격 저장소의 브랜치 이름까지 변경하려면, 로컬 브랜치 이름을 변경한 후 원격 브랜치를 삭제하고 새 이름으로 푸시해야 합니다.

git branch -d "브랜치 이름" : 일반 삭제 - 브랜치가 다른 브랜치에 이미 병합된 경우에만 사용 가능합니다.

git branch -D "브랜치 이름" : 강제 삭제 - 병합되지 않은 커밋이 있어도 강제로 삭제하고 싶을 때 사용합니다.
#이 명령을 사용할 때는 주의가 필요합니다. 
#주의사항
#- 현재 작업 중인 브랜치는 삭제할 수 없습니다.
#- 삭제하기 전에 git checkout <브랜치 이름> 명령어로 다른 브랜치로 전환해야 합니다. 


git add 파일명 : 인덱스 추가(tracked)


git commit -a : tracked 파일 자동 add 후 커밋
#주의사항 : 새로운 파일(untracked) 은 git commit -a 로 커밋되지 않습니다.
#- 반드시 git add 파일명 먼저 해야 합니다.

git commit -am "msg" : 자동 add + 메시지 입력

git commit -a -m "msg1" -m "msg2" : 자동 add + 메시지 여러줄 


git switch "브랜치이름" : 현재 로컬 브랜치 변경


git push : 로컬 브랜치 이름과 tracking 설정이 이미 연결되어 있는 경우.

git push origin "브랜치명" : 특정 브랜치를 origin에 push

git push -u origin "브랜치명" : 로컬 브랜치를 원격에 새로 생성하면서 push

git push -f origin "브랜치명" : 강제로(덮어쓰기) push — 위험!
#팀 작업 시 강제 푸시는 주의해야 함


git show : 최신 커밋 전체 보기

git show <commit> : 특정 커밋 보기

git show <branch> : 특정 브랜치 최신 커밋

git show --name-only "커밋ID" : 변경된 파일 목록

git show --no-patch : 커밋 메시지만 보기


git log : 최근 커밋 목록 보기

git log -5 : 최근 5개만 

git log --oneline -10 : 한줄로 보기 - 최근 10개만 

git log --oneline --graph --decorate --all : 그래프 포함 전체 브랜치 히스토리

git log -p 파일명 : git log -p 파일명