Git - Conflict시 한쪽 브랜치로 적용하기

JunMyung Lee·2024년 12월 3일
0

Git

목록 보기
1/1

어쩔수 없이 빌드된 파일을 push해야하는 상황에서, 해당 파일이 충돌이 나면 난감하다.
복잡하게 구성되어 있는 컴파일된 데이터를 비교할 수 없기 때문이다.
이럴때 특정 브랜치의 코드로 적용을 해야할 상황이 있다.

상황은 항상 develop, release, master와 같이 환경별 머지 대상이 되는 브랜치와,
작업 브랜치인 feature 브랜치가 대상이 될 것이다.

git checkout --ours

develop, release, master와 같이 환경별 배포대상이 되는 브랜치 기준으로 코드를 덮어쓰기 할 경우

git checkout --theirs

feature와 같이 작업 브랜치 기준으로 코드를 덮어쓰기 할 경우

conflict가 발생한 상태에서:
conflict가 발생한 파일을 확인하고, 해당 파일을 feature branch의 내용으로 덮어쓰려면 다음 명령을 실행합니다.

git checkout --[ours | theirs] <파일명>

# result
# Updated 1 path from the index

모든 conflict 해결:
만약 여러 파일에서 conflict가 발생한 경우, 모든 파일에 대해 --theirs를 적용하려면 아래 명령을 사용할 수 있습니다.

git checkout --[ours | theirs] .
profile
11년차 검색개발자 입니다. 여러 지식과 함께 실제 서비스를 운영 하면서 발생한 이슈에 대해서 정리하고 공유하고자 합니다.

0개의 댓글

Powered by GraphCDN, the GraphQL CDN