을 사용할 때 cvs2svn 할 수 있는 방법 당신은 기호의 이름을 변경하는 지점과 태그를 해결하는 같은 이름?

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

  •  03-07-2019
  •  | 
  •  

문제

나는 변환 CVS 저장소에서는 다음 기호(사):

tcm-6.1.0-branch --점
tcm-6.1.0 --태그

를 사용하는 표준 변환 cvs2svn 그들을 식별합니다.그러나 내가 하고 싶으면 몇 가지 청소는 동안 변환입니다.특히고 싶 드롭 중복되는'분기'부분의 지점을 상징이,있을 것이기 때문에서'분기'dir 에 svn.가는 다음을 symbol_transforms 의 프로젝트:

RegexpSymbolTransform(r'(.*)-branch', r'\1')

지금 나는 끝까지"오류가:여러 정의의 상징'한의학-6.1.0'에서..."이기 때문에 모든 파일 tcm-6.1.0 모두점과 태그입니다.나는 여러 CVS 상징 쌍는 결과에 이 문제를 해결합니다.

그것은 나에게 보인다는 이 기호는 다른 대상 디렉토리는 다른 이 작업은 가능해야 한다.뭔가가있다 내가 누락되었거나 이것은 단순히 단점의 cvs2svn?

의 이름을 변경하려면 어떻게 이러한 기호는 그들은 별도의 유지와 결과지점과 태그 이름이 같은?

--

이 없는 경우 작업 시간을 제외 문제에서 기호환 규칙 이동해 손으로 나지만,오히려 그것에서 변환 시간입니다.

도움이 되었습니까?

해결책

RegexpSymbolTransform 운영에 너무 낮은 수준,구문 분석하는 동안 저장소의 파일이 있습니다.따라서,사용하는 경우 SymbolTransform 게 두 개의 기호 이름이 같은 것으로 처리 하고 같은 상징이다.

그것의 이름을 변경하는 것이 가능하 가지고 태그 변환 후,하지만 이 필요로 하는 명시적 SVN commit 남아 있을 것이다에 귀하의 역사 영원토록,역사를 만들 탐사 조금 더 복잡합니다.

대신,변환해야 한 지점의 원래 이름은,그러나 그 다음 말 cvs2svn 그것을 저장하 SVN path/점/tcm-6.1.0.는 방법을 상징이 끝날 것이 바로 이곳에서는 관점으로는 원하는 이름,하지만 여전히 의해 처리 cvs2svn 으로서는 또한 마찬가지로 명 태그입니다.

를 사용하여 이 작업을 수행할 수 있습 --symbol-hints=symbol-hints.txt 명령행 옵션이나 SymbolHintsFileRule('symbol-hints.txt') 호 전략 규칙, symbol-hints.txt 를 포함하는 파일은 다음과 같:

.tcm-6.1.0-지지점/지사/tcm-6.1.0.

의 유일한 단점은 이러한 접근 방식이 생각할 수 있는 몇 가지 커밋하는 메시지를 자동으로 생성하여 cvs2svn (예를 들어,위의 창조 지점)에 언급 원지점 이름입니다.

다른 팁

CVS2SVN은 CVS와 SVN 사이에 많은 마법을 수행합니다. 그렇기 때문에 CVS2SVN은 어떤 버전이 어떤 DIR에 속한 지 알 수 없기 때문에 가지와 태그의 이름을 "일치시킬 수 없습니다. 내 조언은 나중에 도구와 같은 도구로 단일 커밋으로 이름을 바꾸는 것입니다 svnmucc. 그래서 당신은 단일 커밋이 있고 모든 것이 제자리에 있습니다.

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