2013-08-19 2 views
22

저는 변경 사항을 별도로 수행하고 있습니다. 트렁크를 변경하는 다른 팀 동료들. 시나리오는 이제 트렁크 업데이트 + 내 지점 업데이트를 포함한 릴리스를 제공하려고합니다. 아직 완전한 모듈을 작성하지 않았기 때문에 트렁크에 분기를 병합하고 싶지 않습니다. 대신 트렁크에서 다른 새 분기를 만든 다음 분기 변경 내용을 새 분기에 병합하고 싶습니다. 지점 업데이트 + 최신 트렁크 업데이트로 새 지점을 완전히 업데이트 할 수 있도록.거북을 사용하여 두 가지를 병합하십시오. SVN

나는 거북이 SVN 병합을 사용하고 있는데 이것은 내가 무슨 짓을 : A, 내 지점에 가지고되지 않습니다

가의 트렁크에 새로 추가 된 파일이 있다고 가정 해 봅시다. 새롭게 생성 된 브랜치 또한 파일 A를 가지고 있습니다. (병합 옵션을 사용했습니다 : "다른 두 개의 트리를 병합") 나는 새 브랜치 폴더로 가서 그 브랜치 URL을 [FROM] 필드에 주었고 [ TO] 필드. 병합을 수행하면 로컬 복사본에서 해당 파일을 삭제합니다. 분명히 이해할 수있는 점은 병합은 변경 사항을 통합하는 대신 새로운 지점 상태를 지점 상태로 변경했습니다.

내가 원하는 것은 새 분기가 가지고있는 최신 변경 사항을 잃어 버리지 않고 새 분기에 내 분기 변경 사항을 병합하는 것입니다. 그래서 새로운 브랜치를 가질 수 있습니다 : 최신 트렁크 수정 + 내 브랜치 변경.

어떻게 하시겠습니까?

+0

이것은 현재 svn입니다 (trunk == newbranch). 이제 작업 브랜치를 병합하고 싶습니다. (200에서 266, 290, 293까지의 특정 리비전을 병합해야한다는 것을 알고 계십니다.) 앞으로 진행할 전제 조건은 무엇입니까? – Ashif

+0

예 올리브. 새 브랜치 : 트렁크의 정확한 사본입니다. 단계별 절차를 참조하십시오. –

답변

2

나는 트렁크에서 새로운 지점을 만들고 를 통해 새로운 지점에 지점을 병합보다 개정의 범위를 병합합니다. 새 지점이 더 최신 버전이므로 제대로 작동해야합니다.

+0

예 Micha, 처음에는 그랬습니다.하지만 지점에서 개발을 수행하는 동안 트렁크가 업데이트 중이기 때문에 트렁크가 업데이트되지 않는 경우, 내 브랜치가 작동하는 동안이 방법이 정상적으로 작동합니다. –

+0

트렁크가 업데이트되었는지 여부와 관계없이 알려진 svn- 관계로 작동해야합니다.예, 충돌을받을 수는 있지만 기본적으로 충돌이 발생합니다. 트렁크의 브랜치를 재 통합하기 전에 트렁크의 업데이트 양식 트렁크를 브랜치에 병합하고 트렁크에 브랜치 (새 기능 포함)를 병합합니다. 이렇게하면 많은 갈등을 겪을 수 있습니다. – Micha

46
Perform fresh checkout of your repository 
Precondition:(Suppose your repository name: Team) 
1. You have trunk(Main Dev) 
2. You have branch (Your changes) 
3. Create say "newbranch" from trunk.[ TortoiseSVN->Branch/tag][ Picture1 }Note:Select Head revision 

enter image description here

4. Perform svn Update inside "Team"->So newBranch is updated.[picture2] 

enter image description here

5. Now, select newbranch and merge[Tortoisesvn->Merge][Picture3] 

enter image description here

6. Select default "Merge a range of revision", to select revisions which you only intrested to merge.[[Picture4] 

enter image description here

enter image description here

7. Click, showlog to select required revisions you intrested on[picture5] 

Finaly merge is completed[picture6] 

enter image description here

** 참고 : 충돌에서 오는 경우, 수동으로 충돌 개정을 병합합니다.

+1

QA가 완료된 후 "newbranch"를 "트렁크"에 다시 병합하는 방법은 무엇입니까? – bsobaid

+0

먼저 '변경 범위 병합'옵션을 사용하여 트렁크의 모든 변경 사항을 지점에 병합 한 다음 트렁크를 '보낸 사람'으로 선택하면 '다른 두 개의 나무를 병합했습니다' 그리고 지점을 'to'개정판으로 사용하십시오. – keithl8041

+0

좋은 답변입니다. 'newBranch'가 ** 지점 **에 있어야하지 않습니까? :) –

관련 문제