본문 바로가기

VC & DEV TOOLS/Git

[Git] master(default)브랜치에 다른 브랜치 덮어쓰기

진행하던 프로젝트의 master(defalut) 브랜치가 어느시점부터 관리가 안되었는지 2년전 즈음으로 머물러 있었고,

 

현재 시점에서 수작업으로 액티브 브랜치를  merge 하기에는 필요 이상의 공수가 들 참이었다.

 

그러는 중에 좋은 솔루션을 Stack Overflow에서 발견했고, 이를 통해 master 브랜치를 갈아 엎는데 성공했다.

 

순서는 아래와 같으며 터미널 및 git bash를 활용할 때 입력하는 명령어들을 기준으로 한다.

 

1. 현재 master가 remote의 최신 버전과 동기화되도록 세팅

 

2. 덮어쓰고자 가져올 branch(feature)를 checkout

 

3. git merge --strategy=ours master 입력

 

4. git checkout master 입력 

 

5. git merge --no-ff feature 입력

 

 

그리고 나면 한참 뒤쳐져 있던 master 브랜치가 덮어쓴 최신의 브랜치로 갈아엎인 모습을 평화로이 감상할 수 있다.

 

(경우에 따라 상당히 개운할 수 있음)

 

** 단, 언제나 돌이킬 수 없는 결과를 방지하고자 한다면 작업 이전에 백업 레퍼지토리를 꼭 만들어두고 진행할 것 **

 

https://stackoverflow.com/questions/40517129/git-merge-with-force-overwrite

 

Git merge with force overwrite

I have a branch called demo which I need to merge with master branch. I can get the desired result with following commands: git pull origin demo git checkout master git pull origin master git merg...

stackoverflow.com