2017-11-01 3 views
1

내 프로젝트에는 master 분기와 staging 분기가 있습니다. 방금 master에서 떨어져있는 별도의 develop 지점을 밀어 넣었지만 staging이 아닌 지점이 필요합니다.한 지점의 커밋을 병합하여 다른 지점을 기반으로합니다.

develop 브랜치를 마스터보다 1 커밋하고 가지고 있으므로 내 스테이징을 벗어났습니다 branch? 따라서 궁극적으로는 staging보다 먼저 커밋이 하나일까요?

나는 stagingdevelop의 간단한 REBASE를하고 제안하는 유혹 될 수

답변

1

:이 후 staging 직접 위에 master에서 분기 지점을 발생 develop에있는 모든 커밋을 재생 할

git checkout develop 
git rebase staging 

staging 브랜치 그러나 이것은 또한 어떤 masterstaging 위의 커밋을 재생할 수 있습니다, 당신이 원하는 것처럼 들리지 않습니다.

git checkout staging 
git checkout -b new_develop 
git cherry-pick <SHA-1 of single commit> 

그리고 이전 develop 분기를 삭제, 이름 변경 : 당신이 원하는 모든 재생하는 경우

그래서 하나의 staging의 상부에 커밋과는 develop 분기를 할 수 있고, 당신이 시도 할 수 있습니다 new_developdevelop에 :

git branch -d develop 
git branch -m new_develop develop 
+0

감사 임마,이 경우에는 두 번째 방법이 필요했다. – JohnSnow

관련 문제