📘 Programming/Git

[Git] 명령어 정리

Lento_ 2025. 5. 21. 13:37

1. Git 관련 환경설정 및 초기화

  • 저장소별 유저 이름 설정 (해당 디렉터리로 이동 후) : git config user.name "Git 이름(ID)"
  • 저장소별 유저 메일 설정 (해당 디렉터리로 이동 후) : git config user.email "Git 계정 이메일"
  • 저장소별 설정 정보 조회 : git config --list
  • 현재 위치에 로컬 저장소 만들기 : git init
  • Git 상태 확인 : git status
  • 저장소 복제하기 : git clone <url>
  • 새로운 원격 저장소 추가하기 : git remote add <원격 저장소> <url>
  • sample.txt 파일 Staging area에 올리기 : git add sample.txt
  • add 명령에서 Git 대화 모드를 사용해서 파일 추가하기 : git add -i
  • 수정되고 추적되는 파일의 변경 사항 Staging하기 : git add -u [<경로>[<경로>]]
  • commit 메세지를 붙여 커밋하기 : git commit -m "메세지 내용"
  • commit 메세지 + 스테이징 동시에 하기(이전에  commit을 올려 tracked된 파일만 가능) : git commit -am "메세지 내용"
  • commit 정보 확인 : git log
  • 최근 commit 취소 : git reset HEAD^
  • 작업 트리의 변경 사항 돌려놓기 : git checkout HEAD <파일> [<파일>]
  • 마지막 commit 고치기 : git commit -m "메세지" --amend
  • 이전 커밋을 수정하고 commit 메세지 재사용하기 : git commit -C HEAD --amend

 

2. Branch

  • Branch 목록 확인하기 : git branch        ('-r' 옵션 : 원격 브랜치 / '-a' 옵션 : 모든 브랜치)
  • 특정 Branch로 이동하기 : git checkout <Branch Name>
  • 특정 Branch 생성 후 해당 Branch로 이동 : git checkout -b <New Branch Name>
  • 특정 Branch에서 파생 Branch로 만들어서 해당 Branch로 이동 : git checkout -b <Branch Name> <Base Branch Name>
  • 모든 변경 사항 취소 : git checkout .
  • (단,  아직 add / commit 되지 않은 내용 (Working Directory에 있는 변경 내용) 되돌리고 싶은 파일은 추적 되고 있어야 한다.)
  • (checkout으로 지워버린 내용은, commit하지 않고 지운 내용이기 때문에 다시 복구할 수 없다.)
  • 특정 파일에서 작업한 내용 삭제 : git checkout --<파일 이름>
  • commit 로그에서 한줄에 한 commit씩 표시(확인하기) : git log --oneline
  • commit 로그에 각 브랜치의 commit 그래프로 표시 : git log --branches --graph
  • Branch 병합 : git merge <Branch_B>
  • (단, Branch_B를 Branch_A에 병합한다고 했을 때, 병합 전에 Branch_A로 체크아웃을 해야한다.)
  • commit하지 않고 합치기 : git merge --no-commit <Branch_B>
  • branch의 이력을 다른 branch에 합치기 : git merge --squash <Branch>
  • 병합이 끝난 Branch_B 삭제 : git branch -d <Branch_B>
  • 작업 트리의 수정 내용 숨기기 : git stash
  • 숨긴 수정 내용 꺼내오기 : git stash pop

 

3. Git 이력

  • 모든 이력 보기(상세 조회) : git log
  • commit 이력 중 commit ID와 타이틀 메세지만 조회 : git log --oneline
  • 모든 브랜치 commit 이력 조회 : git log --oneline --decorate --grapth --all
  • 특정 파일의 변경 commit 조회 : git log --index.html
  • 가장 최근의 commit 로그 확인 : git log -1
  • 20개의 항목과 패치만 보이도록 로그 제한하기 : git log -20 -p
  • 6시간 동안의 commit 로그 보기 : git log --since="6hours"
  • 각 항목의 로그 이력 한 줄씩 보기 : git log --pretty=oneline
  • 각 항목마다 영향 받은 줄의 통계 보기 : git log --stat
  • 현재 작업 트리과의 인덱스 차이 확인 : git diff
  • 작업 트리와 저장소의 차이점 보기 : git diff HEAD
  • 파일의 commit 정보 줄 단위로 보기 : git blame <파일>

 

4. 원격 저장소

  • 원격 저장소에 연결 : git remote add origin <원격 저장소 주소>
  • 원격 저장소 연결 확인 : git remote -v
  • 로컬 저장소의 commit을 맨 처음으로 원격 저장소에 올리기 : git push -u origin <branch>
  • (두 번째) 로컬 commit을 원격 저장소에 올리기 : git push <원격 저장소>
  • 원격 저장소의 commit을 로컬로 가져오기 : git pull <원격 저장소>
  • 원격 저장소를 local이라는 로컬 저장소로 복제 : git clone <원격 저장소 주소> local
  • 원격 저장소의 commit을 가져오기만 하고 병합하지 않음 : git fetch <원격 저장소>
  • fetch로 가져온 정보가 있는 branch로 이동 : git checkout FETCH_HEAD

'📘 Programming > Git' 카테고리의 다른 글

[Git] git rebase  (0) 2025.06.03
[Git] commit 개수 출력  (0) 2025.05.21