2009-08-07 4 views
6

내 앱의 특정 Subversion 분기를 체크 아웃했습니다. '1.0'이라고 부르세요. 일부 변경 작업을하고 일부 새 파일을 추가했지만 변경 사항을 아직 커밋하지 않았습니다. 그러나 '1.0'분기를 변경하지 않으려 고합니다. 대신 새로운 '1.1'분기에 변경 사항을 적용하려고합니다.Subversion 분기 질문

'1.0'분기의 새로운 복사본을 먼저 확인한 다음 '1.1'이라는 새로운 Subversion 분기를 만든 다음 커밋하기 전에 보류중인 변경 내용을 수동으로 복사해야합니다.

더 쉬운 방법이 있나요?

답변

9

분기를 원격으로 생성 한 다음 새 분기로 전환하고 변경 사항을 적용 할 수 있습니다.

$ cd /path/to/working 
$ svn copy svn://my/repos/trunk svn://my/repos/branches/1.1 -m "Created branch 1.1" 
$ svn switch svn://my/repos/branches/1.1 
$ svn commit -m "Your message" 
+0

두 번째 줄의 트렁크가 아닌 지점을 복사 할 수 있습니다. –

+0

이것은 트릭을 만들었습니다. 매우 감사합니다. – Rob

2

svn switch을 사용하면 작업 복사본을 다른 분기로 전환 할 수 있습니다. svn copy <repository>/branches/1 <repository>/branches/2

3

원격 복사본 만 사용하여 체크 아웃 된 작업 복사본을 만들지 않고 실제로 분기를 만들 수 있습니다. 트렁크의 svn copy (또는 1.0 브랜치)을 1.1 브랜치로 수행하면 svn switch을 수행하여 작업 복사본을 새로운 브랜치를 가리 키도록 이동 한 다음 거기에 커밋 할 수 있습니다. (이전에이 같은 짓을하지 않은 경우 수정 사항을 잃지 않도록, 당신의 현재 작업 복사본의 백업을 저장하는 것이 현명합니다.) 예를 들어

...

svn copy http://svn.example.com/branches/1.0/ \ 
     http://svn.example.com/branches/1.1/ \ 
    -m "Creating 1.1 branch." 

cd /path/to/working/copy 
svn switch http://svn.example.com/branches/1.1/ 

테이크 자세한 내용은 svn help switch을 참조하십시오.