2010-05-05 4 views
2

저는 현재 회사에서 Subversion으로 마이그레이션하도록 설득하고 있습니다. 정말 도움이 될만한 한 가지는 저와 같은 저장소에 저장소를 저장할 수있게하는 것입니다 시간 (그때 그들이 얼마나 힘들게 그들이 자식으로 할려고 한 시간을 보냈다는 것을 보여줄 수있다). Subversion 저장소를 git에 넣을 수는 있지만 각 디렉토리에 .svn 아티팩트가 많은 것처럼 보입니다. 이걸 피할 방법이 있는지 아는 사람 있습니까?Subversion과 git에서 저장소 저장

+0

문제점은 무엇입니까? "(그렇다면 그들이 전복을 시도하는 데 한 시간을 얼마나 소비했는지 표시 할 수 있습니다.)" – khmarbaise

+0

특정 문제는 없지만 가장 일반적인 시나리오는 svn 사용자가 절반 완성 된 기능을 사용하지 않아도되므로 우리의 중앙 코드베이스가 다른 프로젝트에 대해 핫픽스 될 수 있습니다. 이것은 git 브랜칭으로 처리하기가 매우 쉽습니다. 기술적으로 Subversion 브랜치를 사용하면 기술적으로 가능하지만 실제로는 svn에서 작업 복사본의 왕실을 엉망으로 만들지 않고 브랜칭을 처리하지 못했습니다. 따라서 팀 동료가 없으므로 가지를 사용하지 마십시오. – Ceilingfish

답변

1

svn 저장소를 git 저장소로 가져 와서 재생할 수 있으며 언제든지 Subversion 변경 사항과 동기화 할 수 있습니다. 그러나 AFAIK는 git 저장소 변경 사항을 Subversion 1에 다시 보낼 수 없습니다.

Github 단지 자식 저장소에 읽기/쓰기 권한을 제공하기 시작했습니다. 그래서 그것은 github에서 git 저장소로 svn 저장소를 가져올 수 있고 svn 도구에서도 svn 저장소를 계속 사용할 수있는 이론입니다. 또한 방화벽 내부에서 사용할 버전을 제공합니다.

+0

"AFAIK git 저장소 변경 사항을 Subversion 1에 다시 보낼 수 없습니다." 전혀 사실이 아닙니다. David M이 위에 말한 것처럼 git svn은 양방향 거리입니다. – ebneter

+0

두 머신에서 svn 저장소의 자식 - svn 복제본을 만들 때 문제가 발생했다면 두 머신 사이에서 git을 사용하여 패치를 가져 오거나 푸시 할 수 없으며 두 가지 모두를 사용하여 서브 버전으로 변경 사항을 다시 보냅니다. – duncan

8

git-svn을 사용하는 것이 가장 좋은 순간 일 수 있습니다. git와 Subversion 간의 양방향 인터페이스입니다. 근본적으로 Subversion 작업 복사본 인 git 저장소를 만듭니다. 주의 사항이 있습니다 - 저장소를 복제하거나 푸시/풀링해서는 안됩니다. 관련 맨 페이지를 참조하십시오.

동일한 코드에서 Subversion과 git를 동시에 수행하는 대신 Subversion에서 git으로 전환하는 파일럿 프로젝트를하는 것이 좋습니다. git-svn을 디딤돌으로 사용하는 것에 대해 걱정합니다. 상호 운용되도록하는 데 문제가 있으면 전체 git 아이디어를 망칠 가능성이 높습니다.

Subversion에서 일부 DVCS로 이동하는 방법과 이유에 대해 많은 논평이 있습니다. 여기에 하나가 내가 좋아하는입니다 :

http://joelonsoftware.com/items/2010/03/17.html

관련 문제