2014-09-01 4 views
0

나는 두 가지 사소한 차이가있는 프로젝트 버전을 가지고 있습니다. 또한 프로젝트의 기본 (공통 부분)이 자주 바뀌고 있습니다. 이 상황을 처리하기 위해 나는 gitTortoiseGit을 사용하고 있습니다. 예를 들어 br1 (제 1 버전) 및 br2 (제 2 버전)은 master의 하위 분기입니다. 나는 지점 br1에서 일하고 있어요 때두 버전의 프로젝트를 어떻게 처리합니까?

master 
    |----br1 
    |----br2 

는 지금은 master 지점에 일부 변경 사항을 적용하려고합니다. 가능한가? 아니면이 상황을 처리 할 다른 제안이 있습니까?

+2

['git cherry-pick'] (http://technosophos.com/2009/12/04/git-cherry-picking-move-small-code-patches-across-branches.html)을 찾고 계십니까? ? –

+0

@larsmans : 매우 유용합니다. 거북이에 대한 해결책이 있습니까? –

+1

두 개의 브랜치를 사용한다면, 브랜치가 동일한 패치를 몇 번이나 반복적으로 받길 원하기 때문에 잘못된 방법을 사용하고 있습니다. 단일 브랜치를 사용하고 프로젝트의 다른 버전을 만드는 다른 방법을 사용하십시오 (차이점에 따라 달라집니다) – CharlesB

답변

0

또한 "일반"과 같은 세 번째 분기를 만들 수 있습니다. 공통/분기 별 변경을 수행하기 위해 분기 간을 전환하는 것이 더 어려울 수 있지만이를 병합하는 것이 더 쉽습니다.

1

가장 간단한 해결책은 이것이다 :

마스터이 명령을 사용하는 동안에 다음은 마스터에 넣어하려는 커밋의 해시 (어디

자식

을 체리 - 선택 br1 또는 br2).

그러나이 워크 플로에주의해야합니다. 시간이 지남에 따라 master, br1 및 br2가 점점 더 분기하기 시작하므로 차이가있는 파일이 커지고 저장소가 느려집니다.

관련 문제