>

TortoiseSVN을 사용하여 분기 및 병합하는 방법은 무엇입니까?

  • 답변 # 1

    작업 디렉토리가 트렁크에서 작동한다고 가정 :

    "루트 작업 폴더"를 마우스 오른쪽 단추로 클릭하고 (이 용어는 항상 Windows 탐색기를 나타냄) svn update  작업 폴더를 최신 트렁크로 업데이트합니다.

    가지고있는 것이 안정되어 있는지 확인하십시오.

    루트 작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 svn commit  로컬 변경 사항이 트렁크에 적용되도록합니다.

    루트 작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 svn repo-browser .

    저장소에 분기 폴더가없는 경우 : 트렁크 폴더 바로 위에있는 폴더를 마우스 오른쪽 단추로 클릭하고 "폴더 작성"을 수행하고 분기 폴더를 작성하십시오 (예 : 트렁크가 http://myserver/svn/MyRepository/MyProj/Trunk 인 경우) http://myserver/svn/MyRepository/MyProj/Branches 를 만듭니다 ).

    트렁크 폴더를 마우스 오른쪽 버튼으로 클릭하고 Copy To:  지점의 새 폴더 이름을 입력하십시오. 예를 들면 다음과 같습니다. http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch . (이로 인해 많은 공간이 낭비 될 것임을 걱정하지 마십시오. 이것을 "저렴한 사본"이라고합니다. 파일이 변경되지 않는 한 실제로 파일 내용을 복사하지는 않습니다.

    Repo-browser를 닫습니다.

    작업 폴더 루트를 마우스 오른쪽 단추로 클릭하고 다음을 수행하십시오. svn switch  새 분기의 폴더 이름을 선택하십시오 (예 : http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch ). ). 다른 모든 것을 기본값으로 두십시오.

    이제 지점에서 일하십시오. 중요 시점에 도달하면 루트 작업 폴더를 마우스 오른쪽 단추로 클릭하고 svn commit 를 수행하십시오.  지사에 헌신하십시오. (이것은 트렁크에서 볼 수 없습니다).

    다른 사람들이 같은 지점에서 일하고 있다면 정기적으로 svn update 를하십시오  루트 작업 폴더에서. 이것은 지점에서 업데이트됩니다. 트렁크에서 업데이트를받지 않습니다.

    다른 사람들이 같은 지점에서 작업하고 있는지 여부에 관계없이 트렁크의 변경 사항을 주기적으로 병합하여 지점이 나중에 통합하기가 너무 어렵지 않도록해야합니다. 주기적 병합을 수행하려면 작업 폴더 루트를 마우스 오른쪽 단추로 클릭하고 svn merge 를 수행하십시오. . "개정 범위 병합"을 선택하십시오. "병합 할 URL"에서 트렁크를 선택하십시오 (예 : http://myserver/svn/MyRepository/MyProj/Trunk ). ).개정 범위를 비워두고 나머지는 모두 내버려 두십시오. 다음을 클릭하십시오. 모든 것을 그대로두고병합을 클릭하십시오. 모든 것이 여전히 작동하는지 확인하십시오. 그렇지 않은 경우 수정하십시오. 당신이 만족하면, 정기적 인 svn update 를  분기에서 업데이트하려면 작업 루트 폴더에서 (SVN을 충족시키기 위해 분기에서 작업하는 유일한 사람인 경우에도 필요합니다). 그런 다음 svn commit  병합 된 트렁크 변경 사항을 분기에 커밋합니다. 이 단계는 원하는 횟수만큼 주기적으로 반복 할 수 있습니다.

    지점을 통합 할 준비가되면 위 단계를 마지막으로 수행하고 최종 테스트를 수행하십시오. 지점에 최종 커밋을합니다.

    루트 작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 다른 svn switch 를 수행하십시오. , 이번에는 트렁크로 전환합니다 (예 : http://myserver/svn/MyRepository/MyProj/Trunk ). 이렇게하면 지점에서 수행 한 모든 작업을 "실행 취소"하는 효과가 있지만 걱정하지 않아도됩니다. 작업을 다시받을 수 있습니다. 또한 브랜치에서 변경하지 않은 파일에 대한 많은 업데이트를보고하지만 이는 "SVN 속성"변경 일 뿐이므로 걱정하지 마십시오.

    작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 svn merge . 이번에는 "지사 재 통합"을 선택하십시오. URL의 경우 지점에 입력하십시오 (예 : http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch ). ). 나머지는 그대로두고 다음을 클릭하십시오. 모든 것을 그대로두고병합을 클릭하십시오. 이제 지점에서 수행 한 모든 작업과 트렁크의 최신 작업이 완료되었습니다.

    최종 테스트를 수행하십시오. 브랜치에서 마지막 테스트 할 때와 동일한 파일 세트 여야하므로 모든 것이 작동합니다. 루트 작업 폴더를 마우스 오른쪽 버튼으로 클릭하고 svn commit 를 수행하십시오. . 브랜치에서 작업하지 않은 파일까지도 모두 커밋합니다 ( "SVN 속성"변경 사항 만 있지만이를 커밋하면 SVN이 모든 개정을 추적하는 데 도움이됩니다).

    트렁크는 이제 모든 브랜치 작업뿐만 아니라 브랜치에서 작업하는 동안 트렁크에서 수행 된 모든 작업을 수행하며 모두 작동합니다. 또한 SVN에는 모든 파일의 전체 기록이 있으며 지점에서 작업하는 동안 체크인 된 개정판까지도 포함됩니다.

    선택 사항 : 저장소 브라우저로 이동하여 분기 폴더를 마우스 오른쪽 단추로 클릭하십시오 (예 : http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch ). ) 및 "삭제"를 수행하십시오. 이것은 트렁크에 영향을 미치지 않으며 더 이상 분기가 필요하지 않습니다. (실제로 편집증 환자 일지라도, 필요한 경우 언제든지 Repo 브라우저에서 삭제 된 브랜치를 다시 가져올 수 있기 때문에 걱정하지 마십시오.)

    의견을 남겨주세요!

  • 이전 python : matplotlib의 가로 막대 그래프 주석 [중복]
  • 다음 jquery tableload () html 요소가 정의되지 않은 후