2011-09-17 4 views
0

내 프로젝트에 SVN을 사용하고 있습니다. repo1과 repo2라는 두 개의 저장소가 있습니다. 각 리포지토리에서 두 리포지토리에서 branch1이라는 분기를 만들었습니다. 모듈 1이라는 repo2의 branch1에있는 모듈 중 하나에 대해 svn : external가 정의되었으며 Repo1의 branch1의 module1로 설정됩니다.SVN 문제 해결 방법 : 외부 문제

하지만 이제 repo1에 branch2라는 또 다른 분기를 만들었고 repo2는 두 저장소의 branch1 사본입니다. 이제 repo2의 branch2에있는 내 module1은 repo1의 branch1의 module1을 계속 가리 킵니다. 그러나 repo1의 branch2의 module1을 참조해야합니다.

SVN 복사본 또는 svn 분기를 수행 할 때 자동으로 svn : externals를 변경할 수 있습니까?

+0

'svn : externals'을 사용하여 읽고 싶은 것을 추가 할 수 있습니까? 아마도 SVN에서 가능한 또 다른 솔루션이 있습니다. 왜 두 저장소가 같은 구조를 가지며 repo2가 repo1의 구조를 따라야하는 것 같습니다. – mliebelt

답변

2

나는 이것이 가능하지 않다고 생각합니다. 나는 svn 외부가 branch2 또는 branch1을 참조하도록 원한다면 svn이 알 수있는 방법이 있다고 생각하지 않습니다.

업데이트 :이 discussion가 유용합니다.

+0

제 의견으로는, 그것은 기능이 아니라 버그입니다. 'svn : externals'은 안정적인 참조를 위해 사용되어야합니다. 그래서 그들은 정상적으로, 특정 개정을 지적해야합니다. – mliebelt

-1

svn:externals의 최종 자원은 "상대적"링크를위한 가능성을 보여줍니다. 그러나 그들 중 누구도 당신은 원하는 저장소 국경을 통과 할 수 있습니다. 사용 외부 링크, 또는

  • 및/또는 같은 도구를 해킹 :

    • 상대 SVN을 같은 저장소에 관련된 프로젝트를 넣고 같은 지점 디렉토리에 사용할 :

      에는 다음과 같은 옵션이 잎 svncopy 목적은 svn : externals를 다루는 것입니다. 이 도구는 서브 버전 소스 트리 contrib/client-side/svncopy에 있습니다.
    • 또는 빌드 시스템에 브랜칭/태그를 지정할 수 있습니다.

    이 옵션 중 어느 것도 nobrainer가 아닙니다.

  • 0

    아니요, 필요한 것은 svn에서 자동으로 수행 할 수 없습니다. 가지를 생성하면 svn의 전체 폴더와 모든 외부 참조를 복사합니다.

    하지만 지점을 만들고 외부를 업데이트하기 위해 직접 스크립트를 작성할 수 있습니다.