🗓️ 0512 - Git 병합과 상태 관리
🔀 Git Merge
- Fast-Forward: main에 변경사항이 없으면 단순히 커밋 포인터만 이동
- 3-Way Merge: 두 브랜치 모두 변경된 경우 병합 커밋 생성
⚠️ Git Conflict
- 충돌 시
<<<<<<<, =======, >>>>>>>로 표시됨
- 충돌 해결 후
git add → git commit
🔍 Git Diff
git diff HEAD: 현재 작업 중인 파일 변경 확인
git diff A..B: 브랜치 또는 커밋 비교
📦 Git Stash
- 임시 저장:
git stash
- 불러오기:
git stash pop
- 삭제:
git stash drop, git stash clear
🪝 Detached HEAD
- 커밋 해시로 직접 이동 (
git checkout [해시])
♻️ Git Restore
git restore 파일명: 변경사항 되돌리기
--staged, --source 옵션 존재
🗓️ 0513 - Git Reset, Revert, 원격 저장소
♻️ Git Reset
--soft, --mixed, --hard에 따라 스테이징/작업 상태 다름
- 커밋 삭제 가능, 복구는 reflog로
🔁 Git Revert
- 잘못된 커밋을 취소하는 새 커밋 생성 → 히스토리 보존
☁️ GitHub 개요
- 로컬: 개인 작업
- 원격(GitHub): 협업, 백업
🛰️ Git Remote 명령어
add, remove, rename, show, -v
🔄 Git Fetch vs Pull
- Fetch: 가져오기만 함
- Pull: fetch + merge
- Push 전 fetch/pull 권장