범위가 오류 메시지가 오류 메시지를 전복으로 트렁크로 통합 할 때 오류 메시지 1.5
-
20-09-2019 - |
문제
나는 내복 1.5 저장소의 트렁크로 개발 지점을 통합하려고합니다. 이 작업 전에 트렁크에서 개발 지점으로 모든 변경 사항을 병합했습니다. 이제 분기의 변경 사항을 다시 통합하려고하면 다음 오류 메시지가 표시됩니다.
Command: Reintegrate merge https://dev/svn/branches/devel into C:\trunk
Error: Reintegrate can only be used if revisions 280 through 325 were previously
Error: merged from https://dev/svn/trunk to the reintegrate
Error: source, but this is not the case:
Error: branches/devel/images/test
Error: Missing ranges: /trunk/images/test:280-324
...
그런 다음 메시지는 내 프로젝트의 일부 폴더에 대해 불평합니다. 그러나 트렁크에서 개발 지점으로 다시 변경하려고 할 때, TortoisesVN은 병합 할 것이 없다고 말합니다 (이전의 모든 변경 사항을 이미 병합했듯이).
Command: Merging revisions 1-HEAD of https://dev/svn/trunk into C:\devel, respecting ancestry
Completed: C:\devel
여기에서 지침을 따르려고 노력하고 있습니다. http://svnbook.red-bean.com/en/1.5/svn.branchmerge.basicmerging.html, 그러나 그러한 문제를 해결하는 것에 대해서는 아무것도 없습니다.
어떤 아이디어? 아마도 트렁크를 삭제 한 다음 지점의 사본을 만들어야합니까? 그러나 나는 그것이 안전한지 확실하지 않습니다.
또한보십시오
해결책
Trunk에서 먼저 지점으로 R280에서 R324의 개정판을 병합해야합니다.
그러나 이미 R325를 지점에 통합 한 것 같습니다. 모두 최신 개정판에 대한 개정이 병합되었습니다. 간격이 없어야합니다. 그래서 여기에 약간의 일관성이 있습니다.
+----------------------> /branches/devel
/ / \<--merge not working!
--------/-------+--+---+-----+---------> trunk
| \ | / |
280 \ V / 325
V
missing sync merges from trunk to branch
나는 이것이 당신의 분기 구조라고 생각하므로 트렁크에서 지점으로 모든 변경 사항을 동기화해야합니다. R325 만 합병 했으므로 R280-R324를 병합하면이 작업을 수행 한 후에는 사용해야합니다-Reintegrate
다른 팁
우리는 몇 주 동안이 문제로 어려움을 겪었고 마침내 해결되었습니다.
우리의 경우, 우리는 매일 모든 트렁크 개정판과 합병 된 지점에서 일했습니다. 우리가 그것을 통합하려고 할 때 (트렁크로 다시 합병) 우리는이 오류를 얻었습니다. 우리가 누락 된 범위를 지점에 병합하려고 할 때 우리는 병합 할 것이 없다는 메시지를 받았습니다. 관련없는 여러 분기와 다른 파일과 폴더에서 발생했습니다.
해결책은 누락 된 범위를 SVN : MergeInfo 속성에 분기에 추가하는 것이 었습니다.
각 "누락 된 범위 : 경로 : 개정_Range"라인에 대해 :
- SVN 편집 : 병합 된 분기에 언급 된 파일/폴더의 MERGEINFO 속성 편집
- 다음을 추가하십시오 : 속성 값 끝의 문자열 (예 :/트렁크/이미지/테스트 : 280-324)
- SVN 속성을 저장하십시오
모든 변경 사항을 저지르고 다시 통합하십시오
SVN Merge 명령에 -R 옵션을 사용하기 시작했을 때 이러한 문제가 발생하지 않았고 병합없이 병합 될 때까지 -reintegrate를 시도하지 않았습니다. SVN 1.6.1을 사용하고 있습니다.
내가하는 일은 다음과 같습니다.
1. 지점에서 트렁크로, 트렁크로 병합 할 때, 나는 다음과 같은 -r 옵션을 사용합니다.
cd branchWorkArea/topDir
svn merge -r<branchPoint>:HEAD [otheroptions] svn://svn/project/trunk/topDir
충돌을 해결하고 코드를 테스트 할 때는 동일한 기본 옵션 (특히 -rbranchpoint : head)을 사용하여 지점에 합병을 커밋 한 다음 지점을 트렁크에 병합합니다.
트렁크가 테스트되고 커밋되면 -reintegrate 옵션을 사용하여 분기를 닫습니다. -rbranchpoint : 헤드 옵션도 사용하십시오.
다른 옵션의 경우 항상 사용합니다
-심한 무한대 (1.6.2에서는 불이행으로 인디 니티가되지만 이전에는 그렇지 않음)
-x -b -x -w -ignore -eol 스타일
어쩌면 나는 운이 좋았지 만 상황이 더 잘 작동하는 것 같습니다.
분기의 분기점을 찾으려면 SVN 로그-스톱 온 코피를 수행 한 다음 최종 마지막 Revsion을보십시오. 분기를 만든 SVN 사본이됩니다.
Linux 에서이 작업을 수행하려면 다음과 같은 작업을 수행합니다.
SVN 로그-스탑 온 코피 svn : // svn/project/trunk/topdir |
grep '^r'| 꼬리 -1 | sed -e 's/^r // 1' -e's/.*// g '
지점의 개정 번호를 인쇄해야합니다.
행운을 빕니다
이것은 대답이 아니라 명확한 질문입니다.
내 오류 메시지는 다음과 같습니다.
Reintegrate can only be used if revisions 2669 through 3403 were previously merged from
https://../schemas
to the integrate source, but this is not the case:
trunk/schemas:
Missing ranges:
../schemas:2673,2682,2720,2736,2878,2960,3003,3057
@Greg Trevellick에서 제공 한 솔루션을 사용하여 개정판을 병합하여 오류 메시지를받습니다.
Skemas 폴더에서 @Pako의 답변에 따라 SVN : MergeInfo 속성을 열면 컨텐츠는 다음과 같습니다.
/branches/repos_develop_os/trunk_branch-os/schemas:3329
/trunk/schemas:2669-2673,2682,2720,2736,2878,2960,3003,3057
이 컨텐츠를 어떻게 수정 해야하는지 잘 모르겠습니다. 누락 된 범위가 모두있는 것처럼 보입니다.
방금이 문제가 있었고 저에게 효과가있는 것은 우선 트렁크와 트렁크에서 최신 업데이트를 가질 수 있도록 지점을 트렁크와 동기화하는 것이 었습니다. 그 후, 나는 지점을 트렁크로 통합하려고 시도하고 잘 작동했습니다.