Git 핵심 명령어 정리
1. Git 설치 및 초기 설정
git --version # Git 설치 확인
git config --global user.name "사용자 이름"
git config --global user.email "이메일@example.com"
git config --global init.defaultBranch main # 기본 브랜치 main으로 설정
git config --global --list # 설정 확인
2. Git 저장소 초기화 또는 클론
a. Git 초기화 (새 프로젝트 시작 시)
git init
b. 원격 저장소 복제
git clone <URL>
git clone --depth 200 <URL> # 최근 200개의 커밋만 복제
3. 원격 저장소 관리
git remote add origin <URL> # 원격 저장소 추가
git remote -v # 원격 저장소 목록 확인
4. 변경 내용 추적 (Add, Status)
git status # 변경 내역 확인
git add <파일명> # 특정 파일 스테이징
git add . # 전체 파일 스테이징
5. 커밋 (Commit)
git commit -m "메시지" # 일반 커밋
6. 브랜치 관리 (Branch & Switch)
git branch # 로컬 브랜치 확인
git branch -r # 원격 브랜치 확인
git branch -a # 전체 브랜치 확인
git branch <이름> # 브랜치 생성
git checkout -b <이름> # 브랜치 생성 + 이동
git switch -c <이름> # (Git v2.23+)
git checkout <브랜치명> # 브랜치 전환
git switch <브랜치명> # (Git v2.23+)
git branch -D <브랜치명> # 브랜치 삭제
git branch -m old new # 브랜치 이름 변경
git branch --show-current # 현재 브랜치 확인
7. 로그 및 변경 이력 확인
git log # 전체 로그
git log --oneline # 간단 로그
git log -p # 패치 포함 로그
git log -20 -p # 최근 20개 로그 + 상세
git log --since="6 hours" # 최근 6시간 로그
git diff # 변경 사항 확인
git diff --cached # 스테이징된 변경 확인
git blame <파일> # 각 라인 변경자 확인
8. 원격 저장소 동기화 (Fetch, Pull, Push)
git fetch # 원격 저장소 내용 가져오기 (병합X)
git pull origin main # 원격 변경사항 가져오기 + 병합
git pull --rebase origin main # 리베이스 방식으로 가져오기
git push origin main # 현재 브랜치 푸시
git push -u origin main # 기본 upstream 지정
git push --all # 모든 브랜치 푸시
git push --force origin main # 강제 푸시 (주의)
9. 전체 작업 흐름 요약
git init / git clone <URL> # 초기화 또는 복제
cd <project>
git status # 변경사항 확인
git add . # 파일 스테이징
git commit -m "메시지" # 커밋
git push origin main # 원격 저장소로 푸시
원격에 변경사항이 있다면?
git pull origin main
git add .
git commit -m "메시지"
git push origin main