2009-11-09 7 views
2

본인은 다음과 구조 (예)가 :SVN 모범 사례 도움말

trunk/ 
branches/v1.0.0 
branches/v1.0.1 
tags/v1.0.0 

내 질문은 : 분기 버전 1.0.0와 1.0.1 다른 구현을 가지고, 나는 버전에서 버그를 수정해야 1.0.0, 어떻게해야합니까?

  • 나는 새로운 지점에 지점 1.0.0 의 버그를 수정하고 이후에 복사해야하고 트렁크와 합병?
  • 또는 새 분기로 복사해야하고 새 분기에서 버그를 수정하고 트렁크와 병합 한 후에?
  • 또는 트렁크에서 수정해야하고 트렁크를 새 분기로 복사 한 후에?

추신 : 버전 1.0.1의 구현을 게시 할 수 없습니다. 내가 뭘?

감사합니다.

답변

4
  1. 아마도 해당 분기에서 업데이트 된 버전의 코드를 배포해야 할 필요가 있기 때문에 해당 분기에서 수정하십시오.
  2. 브랜치가 고정되어 배포 될 때 추가적인 문제가 발생할 경우를 대비하여 해당 버전을 출시 된 것으로 태그해야합니다.
  3. 이제 문제는 그 수정을 트렁크 및/또는 다른 브랜치에 통합해야하고, 그렇다면 어떻게해야합니까? 대체로 말하자면 변경 사항을 트렁크에 병합 할 것을 기대하며 다른 트렁크 (트렁크에서 조심스럽게)에 병합 할 것을 기대할 수 있습니다. 그러나 세부 사항은 개발을 조직하는 방법에 따라 다소 달라집니다 (분기 또는 주요 개발을위한 트렁크에). 또한 브랜치에서 수정 한 문제가 트렁크 (또는 다른 브랜치)에서 여전히 문제인지 여부에 따라 다릅니다. 수정중인 코드가 리팩토링되었거나 버그가보다 포괄적으로 다루어 졌기 때문입니다.
2

브랜치에서 수정하고 트렁크에 병합해야하는 경우. 결국 1.0.1에 있어야합니까? 그렇지 않다면 새로운 프로젝트가 필요할까요? 어쨌든, 너무 많은 브랜치를 열지 마십시오. 손이 풀릴 것입니다 ....

+0

몇 개가 너무 많습니까? –

0

트렁크에 버그가있는 경우 먼저 수정하고 필요하면 생각하는 지점으로 변경 사항을 병합하려고합니다. 수정본을 받으려면.