2011-08-19 5 views
2

SVN에 하위 폴더 분기를 만든 다음 트렁크 변경 사항을이 분기에 병합하려고하면 SVN이 1에서 HEAD로 리비전을 병합하려고합니다. 그러면 트리 충돌의 거대한 목록이됩니다.트렁크의 SVN 분기 하위 디렉토리

내가 TortoiseSVN을 사용하고 우리는이 같은 구조의 SVN 저장소가 있습니다

-> root 
    ->Docs 
    ->Code 
     ->trunk 
      ->project 
       ->module1 
       ->module2 
     ->branches 
      ->v1 
      ->v2 

은 내가 그냥 가지의 모듈 1의 지점을 만들 수 있습니다 원하는 것은 module1_test \ 및 수시로 변경 사항을 병합 trunk \ project \ module1을 bracnhes \ module1_test로 변경 한 다음 트렁크의 테스트 분기를 다시 통합하십시오.

그러나 어떤 이유 때문에 내가 merge-> merge 할 때 turtoiseSVN에서 개정판의 범위를 변경하면 트렁크에서 1-HEAD를 병합하려고 시도하고 많은 수의 트리 신탁을 생산합니다. 왜 분기가 만들어 졌는지에 대한 개정을 사용하지 않습니다 .

+0

나는 하위 디렉토리로 분기하려는 경우, 모든 디렉토리를 브랜치하고 함께 작업하고자하는 디렉토리 만 체크 아웃하는 것이 더 좋다는 기사를 발견했다. http://www.tranquillo.net/2010/03/04/better-branching-in-subversion/ –

답변

1

당신이 모든 모듈 1의 개정을 취할 것입니다 어떤 회전을 지정하지하지, module1_test하는 모듈 1을 병합하는

그래서, 당신이 회전 될 개정 (분기가있을 때 지정해야 한 머리, 즉, 만든).

+0

왜 자동으로 할 수 없습니까? 내가 트렁크와 동기화하고 이것을 지점에 올렸을 때의 상황은 어떻습니까? 다음 번에는 트렁크의 변경 사항을 병합해야합니까? 지점이 만들어 졌을 때 또는 내가 마지막으로 동기화했을 때? –

+0

마지막으로 동기화 된 버전에서 수정해야합니다. 또한 오랜 시간 svn이 리비전에 머지 정보를 유지하기 시작 했으므로 module1을 module_test에 병합 할 때 module_test는 module1의 xyz rev를 병합 한 정보를 갖습니다. 이 기능을보다 지능적으로 사용할 수 있는지 여부는 알 수 없습니다. – shikhar