2012-10-26 2 views
0

필자는 기능 브랜치와 마스터 브랜치를 가지고있다. 내 지사 분기가 마스터 분기에서 체크 아웃되었지만 현재 마스터 분기에있는 커밋 중 일부보다 먼저 체크 아웃되었습니다.내역을 변경하지 않고 내 커밋을 마스터에 리베이스

커밋을 마스터 브랜치의 맨 위에 리베이스하고 싶습니다만, 마스터의 히스토리가 변경되지 않게하고 싶습니다. 리베이스가 모든 커밋을 적용하고 싶습니다. repo의 모든 원격 지점에 대한 기록

git rebase로 가능합니까?

마스터에 이렇게

git rebase feature-branch-name

내가 의도하지 않은, 내 기능 분기에 주인 기록을 재생.

+2

일반적으로 rebase와 merge는 항상 * 현재 체크 아웃 된 * 분기를 수정합니다. 따라서 master가 아닌 feature 브랜치를 수정하기를 원하기 때문에 feature 브랜치를 체크 아웃해야합니다. – Amber

답변

6

네, 가능합니다. 시도가 매우 가까웠습니다. 당신은 단지 그것을 뒤집을 필요가 있습니다. 기능 지점에서

이 실행 :이 과정에서 문제를 병합 해결하라는 메시지가 표시 될 수 있습니다

git rebase master 

참고. 일단 완료되면, master에서 가장 최근 커밋이 feature 브랜치에서 나타 났고, feature 브랜치에서 수행 한 커밋 이전에 나타납니다. 그런 다음 마스터 브랜치에서 다음을 실행할 수 있습니다.

git merge feature-branch-name 

그러면 해당 지사의 모든 커밋이 마스터 브랜치에 포함됩니다. 병합 할 때 다양한 옵션이 있습니다. 기본값에서 얻은 결과가 마음에 들지 않으면 git 문서를 참조하십시오.