Git 충돌 발생 및 해결 과정
- 2번 사용자가 branch/common 브랜치에서 common 파일을 Push
- 1번 사용자가 branch/common 브랜치에서 같은 파일을 Push하려고 함 (충돌 발생)
- 2번 사용자가 Pull Request(PR) 생성
- GitHub/GitLab에서 PR을 생성하여 1번 사용자에게 요청.
- 1번 사용자가 PR을 Confirm(Merge)
- GitHub에서 branch/common의 PR을 main 브랜치로 Merge.
- 1번 사용자가 최신 변경 사항을 Pull
- 1번 사용자가 다시 common 파일을 수정 후 Push (충돌 발생)
- 충돌 해결 및 Push
- 해결 완료
Git 개념 정리
git tag
git tag v1.0.0
git push origin v1.0.0
특정 커밋을 버전(태그)으로 저장.
Fork
Fork는 원본 레포에 영향을 주지 않고 나만의 레포로 가져올 수 있음
git reset
- 커밋 되돌리기 (히스토리 삭제됨, 신중히 사용)
git rebase
- merge는 새 커밋이 생기지만, rebase는 부모 커밋을 바꿔 히스토리를 깔끔하게 정리
git merge
- 두 개의 브랜치를 병합, 새로운 Merge Commit 생성
- 충돌 발생 시 수동으로 해결 후 커밋
git revert
- 가장 권장되는 방법 (이력이 남아서 안전)
- 새로운 "되돌림" 커밋을 생성하여 변경 사항을 무효화
'[LG 유플러스] 유레카 > Today I Learned' 카테고리의 다른 글
[TIL][03.04] SQL, DISTINCT, WHERE, JOIN, MVC, Annotation, fetch, async/await (0) | 2025.03.05 |
---|---|
[TIL][02.28] DBMS, SQL, 제약조건, JDBC (0) | 2025.03.03 |
[TIL][02.26] Git, GitHub, git명령어, branch, Merge, Conflict (0) | 2025.02.27 |
[TIL][02.25] 백트래킹, N-Queens, 위상정렬 (0) | 2025.02.25 |
[TIL][02.24] MST, Kruskal, Prim, Dijkstra (0) | 2025.02.25 |