2011-03-17 5 views

답변

1

아마도 가장 쉬운 방법은 변경 사항을 별도의 분기에 저장하는 것입니다.

기본적으로 기본 프로젝트는 'master'브랜치에 있고 다른 버전은 다른 브랜치에 있습니다. 그것이 무엇인지와 관련된 이름을 붙이면 혼란스러워하지 않습니다.

업데이트를 수행 할 때 업데이트가 해당 분기에만 해당하는 경우가 아니면 마스터를 통해 모든 작업을 수행 한 다음 마스터를 병합하여 업데이트 상태를 유지하십시오.

+0

사용자 지정 작업을 명시 적으로 생략 한 위치에서 사용자 지정 작업을 병합 아래에 두지 않는 한 리베이스 작업은 팀에서 작업 할 때 두통을 유발할 수 있습니다. –

+0

@adymitruk, 내 대답에 나는 그들이 병합해서는 안된다는 것을 암시했다. 특수한 브랜치에서 다시 병합해야 할 경우, 브랜치의 특정 파일을 메인 체크 아웃이나 메인 체크 아웃에 적용하기 위해 커밋을'체리 선택 '해야합니다. http://stackoverflow.com/questions/4315948/git-partial-merge-not-whole-branch – RDL

+0

이 지사와 병합하지 않으려 고 의도적으로 원하지 않는 코드를 가져 와서 버전을 다르게 할 수 있습니까? – freediver

0

여러 가지 방법이 있습니다. 하지만 가장 쉬운 방법은 아마도 대부분의 개발이 완료된 지점을 한 곳으로 만드는 것이 될 것이라고 생각합니다. 그런 다음 두 번째 지점에 "약간 다른"코드 세트를 사용하십시오. 유일한 변경 사항은 "차이가 달라야 함"입니다 (하). 가끔씩 다른 브랜치를 메인 브랜치 상단으로 리베이스하십시오.

3 개의 분기, 다른 분기로 병합되는 하나의 분기의 공통 변경 등으로도 수행 할 수 있습니다. 그러나 위의 내용이 더 쉽다고 생각합니다.

0

처음에는 "우리"병합 전략을 사용하여 한 지점에서 다른 지점으로 병합해야합니다. 이렇게하면 다시 병합 할 때 차이가 원래 분기로 병합되지 않습니다.

희망이 도움이됩니다.

+0

나에게 해당 병합 전략에 대한 참조를 제공 할 수 있습니까? 기본적으로 우리는 코드의 일부를 '고정 된'것으로 표시 할 수 있어야하며 병합의 영향을받지 않아야합니다. – freediver

관련 문제