-
Git 기초 마스터하기 - 2편 효과적인 병합 기법과 충돌 해결Git 2024. 1. 2. 16:15728x90
효과적인 병합은 건강한 코드베이스를 유지하는 데 중요하며, 충돌을 해결하는 방법을 이해하는 것은 모든 Git 사용자에게 필수적입니다.
이 글은 고급 병합 기술과 전문가처럼 충돌을 처리하는 방법을 안내합니다.
Git 병합 이해하기 병합은 한 브랜치의 변경 사항을 다른 브랜치에 통합하는 과정입니다. 협업 환경에서 흔히 발생하지만, 충돌을 일으킬 수도 있습니다.
1. 병합 전략
1.1 Fast-Forward Merge
병합되는 브랜치에 다른 커밋이 없을 때 발생합니다.
git checkout main git merge feature-branch
1.2 Three-Way Merge
두 브랜치 모두에서 다른 커밋이 있을 때 사용됩니다.
git merge feature-branch
2. 병합 충돌 처리하기
2.1 Identify Conflicts
병합 중에 Git이 충돌을 알려줍니다.
2.2 Resolve Conflicts
파일을 편집하여 충돌하는 변경 사항을 수정합니다.
충돌을 찾기 위해 Git 마커(<<<<<<<, =======, >>>>>>>)를 사용합니다.
2.3 Mark as Resolved
해결 후 충돌을 해결된 것으로 표시합니다.
3. Merge Tools
3.1 Using GUI Tools
GitKraken이나 SourceTree와 같은 도구는 그래픽 인터페이스를 통해 충돌 해결을 단순화할 수 있습니다.
3.2 Command Line Tools
git mergetool을 사용하여 Git 설정에 구성된 병합 도구를 실행합니다.
4. Squash Merging
메인 브랜치로 병합할 때 피처 브랜치의 모든 커밋을 단일 커밋으로 결합합니다.
git checkout main git merge --squash feature-branch git commit
5. Rebase and Merge
깔끔하고 선형적인 히스토리를 유지하는 데 도움이 됩니다.
git checkout feature-branch git rebase main git checkout main git merge feature-branch
병합을 위해서는 항상 아래 3가지를 기본을 생각하면 편합니다.
- 기능 브랜치를 최신 상태로 유지하기 위해 정기적으로 메인 브랜치에서 변경 사항을 가져오고 병합하세요.
- 코드 품질을 보장하기 위해 병합 전에 변경 사항을 검토하세요.
- 병합 후 철저한 테스트를 통해 문제를 조기에 발견하세요.
'Git' 카테고리의 다른 글
Git 기초 마스터하기 - 4편 Git log로 프로젝트 히스토리 분석 (0) 2024.01.15 Git 기초 마스터하기 - 3편 Alias와 Hook으로 워크플로우 최적화하기 (0) 2024.01.08 Git 기초 마스터하기 - 1편 브랜치 전략 (0) 2023.12.27 hint: The '.husky/pre-commit' hook was ignored because it's not set as executable. 해결하기 (0) 2022.10.29 Git .gitignore 적용 안 되는 에러 고치기 (0) 2022.10.27