Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- scrapy
- python
- 엑셀고급강의
- gradle
- 민생회복지원금
- 민생회복소비쿠폰
- 재무제표기초
- 버전관리
- docker
- Spring
- git초보
- 뉴질랜드여행
- 개발생산성
- git입문
- 주식용어
- 주식초보
- 주식기초
- git
- git연재
- 엑셀중급강의
- IntelliJ
- Ai
- 엑셀강의
- GPT
- 오클랜드공항
- JetBrains
- 엑셀
- 개발툴팁
- AES256
- 기업분석
Archives
나만의공간
Git 15회차. 충돌(conflict) 발생 시 대처법 본문
⚔️ Git 15회차. 충돌(conflict) 발생 시 대처법 - 실무형 해결 전략까지
Git을 쓰다 보면 피할 수 없는 상황, 바로 충돌(conflict)입니다. 이번 회차에서는 충돌이 언제, 왜 발생하는지부터 실제로 생겼을 때 어떻게 해결하는지까지 자세히 안내드릴게요 😊
🤔 Git 충돌이란?
Git 충돌은 두 개 이상의 브랜치에서 같은 파일의 같은 부분을 동시에 수정했을 때 발생해요. Git은 병합할 때 자동으로 처리하려고 하지만, 같은 줄을 서로 다르게 수정한 경우 어떤 걸 남겨야 할지 판단하지 못해 충돌이 발생합니다.
💥 충돌 예시
// 원래 main 브랜치 코드
const title = 'Welcome';
// 브랜치 A에서 수정
const title = 'Hello';
// 브랜치 B에서 수정
const title = 'Hi';
→ 브랜치 A와 B를 병합할 때 충돌이 발생합니다.
📌 충돌이 발생하는 주요 시점
- ✔️
git merge시 - ✔️
git rebase시 - ✔️
pull명령으로 최신 코드를 가져올 때
협업 중 충돌은 흔한 일입니다. 중요한 건 어떻게 해결하느냐예요 💡
🛠️ 충돌 해결 방법
1️⃣ 충돌 메시지 확인
git status
→ 어떤 파일에서 충돌이 발생했는지 알려줍니다.
2️⃣ 충돌 구간 열기
파일을 열어보면 다음과 같은 표시가 있어요:
<<<<<<< HEAD
const title = 'Hello';
=======
const title = 'Hi';
>>>>>>> feature/update-title
<<<<<<< 부터 =======, >>>>>>>까지가 충돌 구간입니다.
3️⃣ 수동으로 수정
const title = 'Hello and Hi!';
원하는 방식으로 코드를 정리한 뒤 저장하세요.
4️⃣ 충돌 해결 후 add
git add 충돌해결한파일.js
5️⃣ 커밋
git commit
Git은 충돌이 해결됐음을 인식하고 병합을 완료합니다!
반응형
⚙️ VSCode로 충돌 쉽게 해결하기
VSCode는 충돌이 발생하면 “Accept Incoming”, “Accept Current”, “Accept Both” 버튼이 자동으로 나타납니다.
- ✔️ Accept Current: 내가 작업한 내용 유지
- ✔️ Accept Incoming: 상대방 브랜치 내용 유지
- ✔️ Accept Both: 둘 다 유지
이 버튼만 눌러도 충돌 해결이 완료됩니다 👌
🚨 실무에서 자주 발생하는 충돌 상황
- ✔️ 여러 명이 같은 파일의 동일한 부분 수정
- ✔️ 브랜치 병합 전에 pull을 안 한 경우
- ✔️ IDE에서 자동으로 생성하는 설정 파일 충돌
이런 상황을 피하려면 병합 전에 항상 최신 코드를 pull하고, 작업 영역을 분리하는 브랜치 전략이 중요합니다.
🛡️ 충돌을 예방하는 꿀팁
- ✔️ 브랜치를 자주 pull하고 최신 상태 유지
- ✔️ 작업 단위를 작게 나눠서 자주 push
- ✔️ 동일한 파일의 동일한 부분을 여러 명이 수정하지 않도록 역할 분담
- ✔️ 병합 전에
git fetch+git diff로 변경 내역 확인
📌 오늘의 핵심 요약
- ✔️ Git 충돌은 동일 파일의 동일 부분을 다르게 수정할 때 발생해요
- ✔️ 수동으로 충돌 구간을 해결하고 add + commit 하면 끝!
- ✔️ 충돌은 두렵지 않아요. 피드백이 아닌 자연스러운 협업 과정입니다 😊
실수 없이 깔끔하게만 쓰는 Git도 멋지지만, 충돌을 잘 해결할 수 있는 Git 유저가 진짜 실력자입니다 💪
📎 다음 회차 예고
16회차. GitHub Actions로 자동화 시작하기
✔️ PR 시 테스트 자동 실행 ✔️ 배포 자동화 ✔️ GitHub로 DevOps 맛보기!
'IT > Git' 카테고리의 다른 글
| Git 18회차. 실무에서 자주 하는 Git 실수 (0) | 2025.07.19 |
|---|---|
| Git 16회차. GitHub Actions로 자동화 시작하기 (1) | 2025.07.18 |
| Git 14회차. GitHub 협업 실습 (중복) (0) | 2025.07.17 |
| Git 13회차. Git Ignore와 무시할 파일 관리하기 (2) | 2025.07.17 |
| Git 17회차. Git 태그(Tag) 관리법 (0) | 2025.07.17 |
Comments
