2008-10-10 11 views
5

자동 배포 시스템이 사이트 트로이드 전복의 최신 버전을 업데이트합니다. 내 라이브 사이트가 트렁크 (항상 거의 진행중인 버전)를 가리키는 대신, 라이브 사이트가 태그를 가리키고 있습니다.태그 사이의 전환 및 전환

예. 트렁크에서 작업하고 v1.0이 끝나면 1.0이라는 태그를 만들고 그 태그에 대한 체크 아웃을 수행합니다.이 태그는 내 라이브 사이트입니다. 자, 트렁크에서 계속 작업하고 잠시 후 v2.0이 있습니다. 2.0이라는 태그를 만들고 라이브 사이트를이 2.0 태그와 유사하게 만듭니다.

현재 라이브 사이트를 지우고이 2.0 태그를 체크 아웃 할 수 있습니다. 그러나 쉽게 들리 네요. 내 사이트는 약 1GB 크기입니다. 왜냐하면 모든 종류의 PDF 문서와 비디오가 포함되어 있기 때문입니다. 나는 대부분 내가 업데이트를 할 때 복사 변경이나 버그 수정이 될 것이라고 안전하게 말할 수 있습니다. 즉, 업데이트 당 내 사이트의 1 % 만 변경 될 수 있습니다. 그리고 내 버전 제어는 오프 사이트 HTTP 연결을 통해서만 내 웹 서버에 액세스 할 수 있기 때문에 전체 사이트를 계속해서 다운로드해야한다는 것을 의미합니다.

태그 사이를 전환하고 서브 버전이 태그 간의 차이점 만 업데이트하는 쉬운 방법이 있습니까?

답변

7

실제로 스위치 기능이 있습니다. 나는 창문 파괴에 대한/GUI 쉘이다 TortiseSVN를 사용, 그래서 수동으로 작업을 수행하는 방법에 익숙하지 않은 해요,하지만 그것이 도움이 될 것 같은이 보인다 :

http://svnbook.red-bean.com/en/1.1/ch04s05.html

6

명령 줄 : svn을 스위치 URL

자세한 내용은 svn help 스위치를 사용하십시오.

그러나 다른 방법으로 작업하는 것이 좋습니다. 제작 사이트는 항상 트렁크에 있지만, 배포 준비가되면 트렁크로 다시 병합되는 지점에서 개발을 수행합니다. 주어진 릴리즈가 끝나면 역사적인 목적으로 태그를 사용할 수 있습니다. 병합 후 svn 업데이트 만 수행하면 사이트에서 새 코드를 실행할 수 있습니다.

DivMod는이 아이디어를 논리적 인 결론으로 ​​받아 들여 작업중인 각 발행물/티켓에 대한 분기를 만듭니다. 당신은 할 수있다 read their description of their system; 그것은 설득력있는 주장을 제시합니다.

+0

+1 DivMod 참조 주셔서 감사합니다. 업데이트 된 링크 : http://twistedmatrix.com/trac/wiki/UltimateQualityDevelopmentSystem – Paolo

0

태그 대신 라이브 브랜치를 사용한다는 점만 제외하면 비슷한 설정을 사용합니다. 트렁크의 변경 사항을 라이브 브랜치에 병합해야하기 때문에 더 많은 작업이 필요합니다. 그런 다음 웹 루트에서 "svn up"을 수행하여 업데이트하십시오. 또한 다른 브랜치의 선택된 변경 사항을 라이브로 병합하려면 약간 더 나은 제어를 제공합니다.

브랜치를 유지하기가 훨씬 쉽기 때문에 다시 한 번 사용해 보았지만, 이제는 약 2 년 동안 3 개의 라이브 사이트에서 위의 기술이 작동했습니다.