전복 : 병합 할 때“대상 경로가 존재하지 않는다”는 것은 무엇입니까?

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

  •  03-07-2019
  •  | 
  •  

문제

Subversion 1.5 사용 지점 B가 있습니다. 브랜치 A에서 분기 A가 있습니다. 두 분기에서 작업을 한 후 A에서 B로 변경됩니다 (사용 svn merge http://path/to/A B)의 작업 디렉토리에서 svn: Target path does not exist. 이것은 무엇을 의미 하는가?

도움이 되었습니까?

해결책

이는 분기 A의 파일에 전복이 B로 합병하려고 시도했지만 파일은 분기 B에 존재하지 않으므로 변경을 병합 할 곳이 없음을 의미합니다. 예를 들어:

  • 분기 생성 b
  • a/readme을 변경하십시오
  • b/readme를 삭제합니다
  • 병합 a-> b

이제 파일이 제거되었으므로 Branch B에 README의 변경 사항을 적용 할 수 없습니다.

편집 : 이로 인해 a 나무 충돌 전복 1.6.

다른 팁

호환되지 않는 변화가 없더라도 SVN 1.5.4 로이 오류가 발생했습니다. 1.5.5로 업그레이드하면 고정되었습니다.

내 트렁크와 가지가 이상한 역사를 가지고 있었기 때문에이 문제가있었습니다.

이와 같이:

              /---------\
trunk -------+---+       +---\
                  \-----------BOOM!

트렁크 병합 -> 브랜치가 작동하지 않았습니다.

병합 브랜치 -> 트렁크가 작동했습니다.

              /---------\
trunk -------+---+       +---+-----
                  \---------/

아마도 트렁크는 그들이 공유 한 마지막 조상에 대한 더 나은 정보를 가지고 있었기 때문일 것입니다.

제 경우에는 트렁크로 다시 합병 할 준비가되지 않았지만 트렁크에서 새 지점을 만들고 오래된 지점을 병합 할 수있었습니다.

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