2012-01-20 4 views
0

나는 이러한 상황이 있습니다SmartSVN으로 2 개의 디렉토리를 가져오고 병합하는 방법은 무엇입니까?

  • 우리는 SVN에서 호스팅되지 않은 코드 웹 사이트가.
  • 이 웹 사이트에서 변경되었습니다.
  • 클라이언트 (우리 팀원 아님)가 고용 한 프리랜서가 변경 작업을 병행했습니다. 우리는 협력 할 수 없습니다.
  • 그래서, 우리는 SVN에 "트렁크"와 "가지"와 같은 병렬 수정 같은 사이트의 2 버전과 하드 드라이브에 2 개 폴더가 있습니다.

질문 : 는 트렁크 하나와 지점 하나, SVN 저장소에 웹 사이트의 두 버전을 모두 가져 와서 충돌 변경된 파일을 편집하고 해결하기 위해 차이의 SVN 목록에서 얻을 수 있습니다? 그런 문제를 해결하기 위해 특별히 만들어진 SVN처럼 보이지만 문제를 해결하는 방법을 조사 할 수는 없습니다.

  • 나는 트렁크에 하나의 버전을 가져옵니다.
  • 분기에 다른 버전을 가져 왔습니다. 이 파일이 아니다 "고 기록하기 때문에
  • 나는, SmartSVN에서"병합 "을 선택하지만, 모든 수정 된 파일은"트리 충돌 "로하지"파일 수정 "으로 인식하고 있습니다, 그래서 내장 사용할 수 없습니다 충돌 해결 도구 수정 된 "하지만 동시에"파일은 나무 충돌 "상태에 있습니다.

테스트의 경우에도 지점과 트렁크에 완전히 같은 파일을 넣었습니다. "병합"을 클릭하면 모든 파일이 "트리 충돌"로 표시됩니다. 나는 완전히 동일하다. 이자형. 가짜 충돌 보고서를 제공합니다.

답변

1

아직 편집 된 사본이 있습니까? 그렇다면 그것을 사용하여 트렁크를 만든 다음 그 지점에서 분기를 가져옵니다. 그런 다음 두 개의 별도 작업 복사본 (트렁크의 복사본과 지점의 복사본)에서 변경 내용 (트렁크)과 프리랜서의 변경 내용 (지점)을 복사하고 둘 다 커밋합니다. 그런 다음 SVN 도구를 사용하여 두 가지를 병합 할 수 있습니다.

그러나, 두 개의 디렉토리에 BeyondCompare 같은 도구의 사용이 쉬울 수 있습니다 ...

당신은 트렁크 및 지점에 가져하지만, 첫번째 커밋, 트렁크에 공통 기본 버전을 가져 지점을 만들 수 없습니다합니다
1

거기에서 1을 변경하고 다른 부분은 트렁크에 변경합니다. 이제 병합이 작동합니다. master 및 branch에 파일을 작성하면 병합 할 때 트리 충돌이 발생합니다.