Program Tip

분기는 어떻게 만듭니 까?

programtip 2020. 10. 2. 23:07
반응형

분기는 어떻게 만듭니 까?


SVN에서 분기를 어떻게 생성합니까?


Subversion의 분기는 매우 가볍고 효율적인 복사 기능에 의해 용이 해집니다.

분기와 태깅은 사실상 동일합니다. svn copy명령을 사용하여 저장소의 전체 폴더를 저장소의 다른 곳으로 복사하십시오 .

기본적으로 이것은 백업, 태그, 분기 또는 무엇이든 관계없이 폴더 복사가 의미하는 바가 관례임을 의미합니다. 사물에 대해 어떻게 생각하고 싶은지에 따라 (일반적으로 과거에 사용한 SCM 도구에 따라 다름) 스타일을 지원하기 위해 저장소 내에 폴더 구조를 설정해야합니다.

일반적인 스타일라는 저장소의 상단에 폴더의 무리를 가지고있다 tags, branches, trunk당신이 당신의 전체를 복사 할 수 있습니다 - 등 trunk에 (또는 하위 집합) tags및 / 또는 branches폴더. 프로젝트가 두 개 이상인 경우 각 프로젝트 아래에 이러한 종류의 구조를 복제 할 수 있습니다.

개념에 익숙해지는 데 시간이 걸릴 수 있지만 효과가 있습니다. 사용할 규칙에 대해 본인 (및 팀)이 명확히 이해하고 있는지 확인하십시오. 브랜치 / 태그가 만들어진 이유와 여전히 적절한 지 여부를 알려주는 좋은 명명 규칙을 사용하는 것도 좋은 생각입니다. 사용되지 않는 브랜치를 보관하는 방법을 고려하십시오.


svn copy다음 명령을 사용하여 새 분기를 만듭니다 .

$ svn copy svn+ssh://host.example.com/repos/project/trunk \
           svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH \
      -m "Creating a branch of project"

https를 통해 repo를 사용할 수있는 경우이 명령을 사용하여 분기 할 수 있습니다.

svn copy https://host.example.com/repos/project/trunk \
       https://host.example.com/repos/project/branches/branch-name \
  -m "Creating a branch of project"

svn cp /trunk/ /branch/NEW_Branch

트렁크에 로컬 변경 사항이있는 경우 변경 사항 Rsync을 동기화 하는 사용

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch

일반적으로 저장소에 여러 분기를 유지할 수 있도록 svn + ssh : //host.example.com/repos/project/branches/mybranch에 복사하지만 구문은 유효합니다.

다음 은 저장소 레이아웃을 설정하는 방법대한 몇 가지 조언입니다 .


트렁크 이름 ( "TEST")에서 분기를 만들고 다음을 사용한다고 가정합니다.

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST

새로운 SVN 사용자를위한 최고의 팁; 이것은 정확한 URL을 빨리 얻는 데 약간 도움이 될 수 있습니다.

svn info현재 체크 아웃 된 분기에 대한 유용한 정보를 표시하려면 실행 합니다.

URL은 (루트 폴더에서 svn을 실행하는 경우) 복사해야하는 URL을 제공해야합니다.

또한 새로 생성 된 분기로 전환하려면 다음 svn switch명령을 사용하십시오 .

svn switch http://my.repo.url/myrepo/branches/newBranchName

브랜치를 병합 할 계획이라면 다음을 살펴 보시기 바랍니다.

Svnmerge.py

Subversion 1.5가 병합 추적을 더 많이 빌드한다고 들었는데, 경험이 없습니다. 내 프로젝트는 1.4.x에 있고 svnmerge.py는 생명의 은인입니다!


  • 현재 프로젝트 외부에 새 폴더를 만듭니다. 이름을 지정할 수 있습니다. (예 : "Customization"이라는 프로젝트에 대한 체크 아웃이 있습니다. 그리고 "Project1", "Project2"와 같은 많은 프로젝트가 있습니다 .... "Project1"의 분기를 만들려고합니다. 먼저 " Customization "에서 마우스 오른쪽 버튼을 클릭하고 새 폴더를 만들고 이름을"Project1Branch "로 지정합니다.
  • "Myproject1".... TortoiseSVN-> 분기 / 태그를 마우스 오른쪽 버튼으로 클릭합니다.
  • 작업 사본을 선택하십시오.
  • 브라우저를 엽니 다 .... "To URL"에서 바로 병렬입니다.
  • 사용자 지정 ..... 오른쪽 클릭 한 다음 폴더 추가를 선택합니다. 생성 한 폴더로 이동합니다. 여기는 "Project1Branch"입니다. 이제 추가하려면 확인 버튼을 클릭하십시오.
  • 이 새로운 banch를 확인하십시오.
  • 다시 만들려는 분기로 프로젝트로 이동하십시오. TorotoiseSVN-> 분기 / 태그를 마우스 오른쪽 버튼으로 클릭합니다. 그런 다음 작업 복사본을 선택합니다. 그리고 URL을 지점 이름으로 제공 할 수 있습니다. {your IP address / svn / AAAA / Customization / Project1Branch}처럼. 그리고 URL에 이름을 설정하면이 이름으로 만 폴더가 생성됩니다. {Your IP address / svn / AAAA / Customization / Project1Branch / MyProject1Branch}처럼.
  • OK 버튼을 누릅니다. 이제 로그를 볼 수 있습니다. 작업 복사본이 브랜치에 저장됩니다.
  • 이제 체크 아웃하여 작업을 즐길 수 있습니다. :)

참고URL : https://stackoverflow.com/questions/2041/how-do-i-create-a-branch

반응형