CVS를 사용할 때 프로젝트 트렁크를 지점으로 변환해야합니다.

StackOverflow https://stackoverflow.com/questions/907644

  •  05-09-2019
  •  | 
  •  

문제

CVS2SVN을 사용하여 크고 다중 프로 젝트 CVS 저장소를 전복으로 변환합니다. 정말 잘 작동하지만 실제로 다른 프로젝트의 지점이어야 할 CVS 프로젝트가 몇 개 있습니다.

옵션 파일을 사용하여 프로젝트의 트렁크를 '/elseproject/branch/shouldbebranch'에 배치해야한다고 지정할 수 있지만 태그와 분기에 대한 전복 디렉토리를 만드는 것을 피하는 방법을 찾을 수는 없습니다. Bebbranch 프로젝트 (비어 있지만 여전히 생성).

현재 볼 수있는 유일한 옵션은 변환이 완료되면 파괴에서 디렉토리를 삭제하는 것입니다. 또한 Symbol Hints 파일을 살펴 보았지만 270 개의 프로젝트가 인덱스 번호별로 프로젝트를 지정하는 것이 너무 어려워 보입니다!

많은 감사합니다, David

도움이 되었습니까?

해결책

아마도 당신의 "Bebbranch"프로젝트 자체에는 지점과 태그가 있습니다. 당신은 어디에서 끝나기를 원합니까?

"해야 할 버 브랜치"프로젝트의 트렁크 만 변환에 포함되도록하려면 :

  • "해야 할 일"프로젝트에서 다른 모든 기호 제외
  • Trunk_path를 다른 프로젝트 내 경로로 설정
  • 옵션 파일에서 branches_path 및 tags_path를 None으로 설정하십시오 (이로 인해 생성되는 것을 방지합니다).

"DourBebranch"프로젝트를 추가하는 옵션 파일의 일부는 다음과 같은 줄을 포함합니다.

run_options.add_project(
    # ...
    trunk_path='OtherProject/branches/ShouldBeBranch',
    branches_path=None,
    tags_path=None,
    # ...
    symbol_strategy_rules=[
        ExcludeRegexpStrategyRule(r'.*'),
        ],
    )

다른 팁

수입 후 고정 업을하는 것이 나에게 가장 좋은 것 같습니다. 프로젝트의 트렁크를 분기 무언가로 이동 시킨다면, Subversion은 역사를 추적합니다.

이것 블로그 게시물 덤프/로드 사이클을 사용하여 경로를 바꾸는 방법을 설명합니다. 이런 식으로 파일의 역사를 되돌아 보면 항상 분기 내부에있는 것처럼 보일 것입니다.

이전 버전으로 돌아 가면 예상하다 프로젝트 트렁크에 있습니다. 그러므로 나는 역사를 바꾸려고하는 것이 좋은 일이라고 생각하지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top