16

Sourcegear's Vault에서 Subversion으로 마이 그 레이션을 용이하게하기 위해 개의 도구이 있습니까?Vault에서 Subversion으로 리포를 마이그레이션하는 데 필요한 도구가 있습니까?

나는 기존 도구 또는 프로젝트를 선호합니다 (구매할 것입니다!).

요구 사항 : 옵션

    의견
  1. 한 시간 이전에만
  2. 전체 역사

:

  1. 라벨/지점/태그에 대한 일부 지원
  2. 비교적 신속합니다. 몇 시간 걸리지 만 며칠은 걸리지 않습니다.
  3. 비용을 사용할 수

보너스 포인트 경우이 과정에 관련된 개인적인 경험을 공유 할 수 있습니다. 우리가 (우리가에서 SourceSafe 마침내 떨어져있어) 볼트와 파괴 사이에 확산 프로젝트를 많이 가지고 있기 때문에 나는이 일을하고 싶은 이유


하나입니다. 어떤 상황에서는 특정 고객의 repos를 SVN에 통합하는 것이 도움이 될 것입니다.

또한 SVN은 타사 도구 중에서 더 잘 지원됩니다. 예 : HudsonRedmine.

다시 : 우리는 전체적으로 볼트를 버리지 않습니다.

+0

몇 명이 왜 Vault를 떠날 것인지 물었습니다. 금고를 버리거나 SVN을 선호하는 것이 아닙니다. 우리 회사는이 두 가지를 모두 사용합니다. 어떤 상황에서 하나에서 다른 것으로 이동할 수 있다면 도움이 될 것입니다. –

+0

흠. 에릭 싱크 (Eric Sink)가 Stackoverflow를 읽고 Vault에이 기능을 구현하여 빠른 응답을 원한다면 궁금합니다. –

+0

나는 이것이 그가 행복해할만한 것이 무엇인지 의심 스럽다. –

답변

19

Google은 볼트에서 git 로의 이전을 고려하고 있습니다. 내역을 관리하고 * .sln, * .csproj 파일에서 볼트 바인딩을 제거하는 vault2git 변환기를 작성했습니다.

git repo가 ​​있으면 git2svn이 있습니다.

라운드가 진행되는 것처럼 들리지만 vault2svn을 처음부터 작성하는 것보다 빠릅니다.

+3

다음은 git2svn에 대한 URL입니다 : http://github.com/AndreyNikiforov/vault2git 잘 모르겠지만 링크가 포함되지 않았다는 것을 귀찮게했습니다. –

+2

이 문제도 발생했지만 Vault (3.1.9)의 이전 버전입니다. Andrey의 레포를 갈래서 Vault 버전에서 작동하도록 변경했습니다. https://github.com/jocull/vault2git - vault_api_3.1.9라는 지사가 있어야합니다. – jocull

+0

@Andrey 감사하다는 말을 듣고 음료를 사고 싶지만 연락 정보를 찾을 수 없습니다. Vault2Git은 이러한 기여를 나타냅니다. 고맙습니다! : o) – iokevins

2

Vault에서 svn으로 변환하는 쉬운 방법을 찾지 못했습니다. 기본적으로 우리는 최신 지점과 트렁크를 가져 와서 svn에서 새로 시작했습니다. 솔직히 두 개 또는 세 개의 레이블을 다시 읽었습니다. 나는 6 개월 동안 주위에 금고 DB를 보관하고 우리는 데이터로 다시 돌아갈 필요가 없었습니다. 그래서 나는 당신이 버그 트래커와의 연계를 위해 당신의 역사를 계속 전진시키고 자한다고 가정합니다. 이처럼 동시에 우리는 뛰어난 버그 목록을 새로운 추적 프로그램으로 이전하여 더욱 편리하게 만들었습니다. 우리가 동일한 버그 추적기를 가지고 머무르는 곳이라면, 우리는 새로운 저장소를 위해 새로운 인스턴스를 시작할 것이라고 생각할 것입니다. 행운을 빕니다!

브렛

8

당신이 전체 버전 기록을 원한다면, 당신은 그냥 서브 버전에 대한 의견 금고 및 검사 거기에 각 버전을 확인하는 스크립트를 작성 할 수 있습니다.

https://www.mercurial-scm.org/wiki/GenericConversion 명령 줄 GETVERSION에 보면, 좋은 예 나는 볼트의 웹 사이트에 본 문서를 바탕으로

입니다.

  1. 체크 아웃 저장소에서 버전 :

    는 는 다음 프로세스를 구현 ... 좋아하는 스크립트 언어를 사용합니다.

  2. 변경 집합에 대한 커밋 주석을 가져옵니다.
  3. 는 댓글
  4. 커밋 사용하여 파일을 커밋 SVN의 REPO
  5. 에 파일을 추가/제거 다음 버전
+0

이것은 우리가하기 시작한 것입니다. 그러나 나는 이미 무엇이 존재 하는지를 볼 것을 요청할 수 있다고 생각했습니다. 링크를 제공해 주셔서 감사합니다. –

+0

Vault 측면을 구현하는 방법에 대한 팁은 무엇입니까? –

+0

볼트가 없어서 정확한 명령을 줄 수는 없지만 GETVERSION 및 HISTORY는 조사해야하는 명령입니다. – Joshua

0

무료로 하나의 단계로 돌아갑니다. 볼트 사용자 라이센스 비용은 우리가 작업 한 이후로 3 배가되었습니다.

+0

나는 당신의 대답이 어떻게 관련이 있는지를 모른다. 이것은 맥 클라이언트 가용성 이외에 SVN으로 이동하는 주된 이유 중 하나입니다 – schmoopy

0

마이그레이션도 고려 중입니다. 한 가지 이유는 비용이지만 또 다른 이유는 Vault가 커밋 주석에 유효한 XML (또는 기타)을 사용하지 않아 특수 문자가 자동화 된 CCNet 빌드 시스템에서 실패하기 때문입니다 (예 : 글 머리 기호가 해당 문자 중 하나이며 구체적으로 우리에게 문제가 있음) . 이 문제를 해결할 수있는 방법은 다음과 같습니다. A) 개발자가 ASCII 32 ~ 126 범위를 벗어나는 특수 문자 인 "유효하지 않은"문자를 사용하지 말고 B) 수동으로 "유효한" 논평. 큰 문제는 아니지만 이러한 문자를 허용하지 않으면 버그 및 기타 주석을 커밋 주석에 쉽게 복사/붙여 넣을 수 없습니다. 이것은 사람들을 감속시키고 흐름과 생산성을 저해하고 좌절을 야기하는 것을 줄이거 나 없애야합니다.

내 연구 결과 Vault에서 SVN으로 직접 마이그레이션 할 수있는 방법이 없다고합니다. 아마도 다른 중간 단계로 다른 버전 제어 시스템을 사용하는 것이 가능합니다. Vault -> OtherSourceControlProduct -> SVN

...하지만 우리는 커밋을 스크립팅 할 것입니다 (Joshua는 처음에 제안했듯이 또는 더 확률이 높음) - 지난 몇 개정을 커밋하고 역사를 위해 잠시 동안 저장소를 남겨 두십시오. 이는 실제로 우리에게 현재 코드와 계층 구조를 제거하고 리팩터링 할 수있는 좋은 기회를 제공합니다.

관련 문제