2011-08-16 4 views
0

우리는 SVN을 소스 코드 버전 관리에 사용하며, 우리는 세 명의 개발자로 구성된 작은 팀으로 AGILE 방법론을 사용합니다.SVN 브랜칭;

원래 코드는 트렁크에 넣어졌고 여러 릴리즈가 거기에서 분기되었습니다. 각 릴리스는 클라이언트마다 다르지만 코드가 개선되면서 트렁크로 다시 병합되지 않고 현재 릴리스에서 다른 고객 전용 릴리스로 병합되어 드물게 트렁크에 다시 병합되었습니다. 트렁크는 지금 완전히 시대에 뒤떨어져 있습니다. 우리는이 모든 지점에서 수년 동안 축적 된 코드 변경으로 새로운 트렁크를 새로 만들 생각입니다.

우리가 릴리스 중 하나를 삭제 (구체적으로 SVN에서 아카이브하고 삭제 한 다음)하면 체인이 떨어져 버리거나 SVN 하드 링크 된 경우 어떻게됩니까? 내 가정은 실제 데이터를 가리키는 참조가 없을 때까지 데이터가 실제로 제거되지 않는다는 것입니다. SVN의 작동 방식에 대해 명확하지 않습니다. 데이터의 실제 위치가 부적절합니다.

모든 개정 내역을 트렁크에 상주 할 수있는 실제 사본으로 내보내는 방법입니까, 아니면 무의미하고 무의미한 방법일까요?

+0

"SVN에서 파일을 아카이브 한 다음 삭제"한다는 것은 무엇을 의미합니까? – khmarbaise

+0

해당 지점에서 코드의 실제 사본을 가져 와서 어딘가에있는 zip 파일에 저장하고 SVN에서 코드를 제거하십시오. –

+1

SVN에서 제거하는 것은 그렇게 간단하지 않습니다. 저장소를 완전히 덤프하고 변경된 내용을 복원해야하며 그러한 절차의 장점은 무엇입니까? – khmarbaise

답변

5

svn rm 또는 svn URL/branches/B_XXX를 삭제하면 해당 분기가 HEAD 개정판에서 삭제되지만 SVN이 유용하지 않은 경우 기록에 유지됩니다.