Git 핵심 명령어 가이드

버전 관리

git add filename  // 스테이징 영역에 파일 추가
git commit -m "커밋 설명" // 스테이징 영역의 내용을 저장소에 커밋 (작업 디렉토리만 변경하고 스테이징하지 않은 내용은 커밋되지 않음)
git status    // 상태 확인
git diff  // 변경 사항 비교

파일 관리

git add test.txt
git rm test.txt
git checkout -- test.txt   // 파일 시스템에서 실수로 삭제한 파일 복구, 작업 디렉토리에서 수정한 파일 복구

git reset HEAD readme.txt // 스테이징 영역의 수정 사항 취소 (작업 디렉토리는 여전히 수정 상태이며, 원래 파일로 복원하려면 checkout 사용)

원격 저장소 연결

git remote add origin git@server-name:path/repo-name.git

git remote -v // 원격 서버 정보 표시
git remote rm origin // 원격 연결 삭제

원격 저장소로 푸시

git push -u origin master  -- 처음으로 master 브랜치의 모든 내용 푸시
git push origin master  -- 최신 수정 사항 푸시

클론

$ git clone git@github.com:michaelliao/gitskills.git

브랜치

git branch                // 브랜치 목록 조회
git branch <name>         // 새로운 브랜치 생성
git checkout <name>       // 브랜치 전환
git checkout -b <name>    // 브랜치 생성 및 전환
git checkout -b dev origin/dev  // 원격 브랜치를 로컬로 가져와 전환

git merge <name>          // 현재 브랜치에 특정 브랜치 병합

git branch -d <name>      // 브랜치 삭제
git branch -D <name>      // 병합되지 않은 브랜치 강제 삭제

git branch --set-upstream-to=github/dev dev // 로컬 브랜치와 원격 브랜치 연결

작업 임시 저장

git stash                 // 현재 작업 공간 저장
git stash list            // 저장된 작업 목록 조회
git stash apply           // 특정 저장 작업 복원
git stash drop            // 특정 저장 작업 삭제 (기본값: 마지막)
git stash pop             // 마지막 저장 작업 복원 후 삭제

로그

git log --graph --pretty=oneline --abbrev-commit  // 그래픽 형태로 로그 표시

git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

태그

git tag v1.0              // 태그 생성
git tag v0.9 f52c633      // 특정 커밋에 태그 생성
git tag -a v0.1 -m "version 0.1 released" 1094adb  // 특정 커밋에 주석과 함께 태그 생성
git tag                   // 태그 목록 조회
git show v0.1            // 태그 상세 정보 확인

git tag -d v0.1           // 로컬 태그 삭제
git push origin :refs/tags/v0.1  // 원격 태그 삭제
git push origin v1.0      // 특정 태그를 원격 저장소로 푸시
git push origin --tags    // 모든 태그를 원격 저장소로 푸시

참고: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

Git 모든 기록 삭제

git checkout --orphan master_back
git branch -D master
git branch -m master
git push -f origin master

Git 원격 저장소 연결

  # 원격 브랜치 origin/branch를 로컬로 가져와 newbranch 생성 및 연결
  git checkout -b newbranch origin/branch

  # 로컬 브랜치를 원격으로 푸시, newbranch와 origin/branch를 연결
  git push --set-upstream origin newbranch:origin/branch

  # 로컬 newbranch와 원격 branch 연결
  git branch --set-upstream-to=origin/branch newbranch

태그: Git 버전관리 브랜치 태그 원격저장소

7월 6일 04:23에 게시됨