git-svn
은 이 아닙니다. 리포지토리 또는 저장소 부분을 한 번 변환하는 데 적합한 도구입니다. Git을 기존 SVN 서버의 프론트 엔드로 사용하려는 경우 훌륭한 도구이지만 일회성 변환의 경우 이 아닌은 git-svn
을 사용해야하지만 svn2git
은이 사용 사례에 훨씬 적합합니다.
svn2git
이라는 pleny 도구가 있는데, 아마도 가장 좋은 도구는 https://github.com/svn-all-fast-export/svn2git의 KDE입니다. 그 svn2git
도구를 사용하는 것이 좋습니다. 내가 사용할 수있는 최선의 방법이며, 규칙 파일을 통해 할 수있는 일에 매우 유연합니다.
정확하게 분기 파일과 해당 기록이 마이그레이션되도록 규칙 파일을 쉽게 설정할 수 있습니다.
svneverever
에서 http://blog.hartwork.org/?p=763까지의 기록은 Git으로 마이그레이션 할 때 SVN 저장소의 기록을 조사하는 훌륭한 도구입니다.
는 자식-SVN은 KDE svn2git
대신 git-svn
를 사용하는 이유, 여기에 몇 가지 더 이유가 있습니다 시작 쉽게는 비록, 유연성 외에 우수 :
- 역사는 훨씬 더 재건한다 그리고 클리너가
svn2git
(올바른 것이 사용 된 경우) 인 경우, 이것은 특히 분기와 병합을 포함한 더 복잡한 히스토리의 경우입니다.
- 태그는 실제 태그이고 Git에서 분기하지 않습니다.
- 을
git-svn
으로 설정하면 태그에 빈 커밋이 추가되어 분기에 포함되지 않으므로 fetch
은 기본적으로 명령어에 --tags
을 줄 때까지 가져 오지 않습니다. 가져온 분기를 가리키는 태그도 가져옵니다. 적절한 svn2git 태그가 자신이 속한 곳이다 사용하면 SVN에서 레이아웃을 변경 한 경우
- 은 쉽게,
svn2git
와이를 구성 할 수 있습니다 git-svn
당신이 svn2git
와 역사 결국
- 을 잃어 버리게된다 당신은 쉽게 여러 Git 저장소에 하나 명의 SVN 저장소를 분할 할 수 있습니다
- 또는 변환이 gazillion 배 빠른 올바른
svn2git
와와보다 쉽게
- 하나 개 Git 저장소에 같은 SVN 루트에 여러 SVN 저장소를 결합
git-svn
git-svn
이 더 나으며 KDE svn2git
이 우월한 데는 여러 가지 이유가 있습니다.:-)
"요새화 문제 해결 및 정리"라는 지사가 있습니까? 끝 부분에 점이 붙어 있니? "FortifyIssuesFixAndCleanUp"과 같은 점이나 공백없이 이름을 변경하십시오. 나는 git-svn이 디렉토리에 공백과 특수 문자가있는 디렉토리가 엉망이라고 생각한다. – Schwern
그래, 점이없고 공백이없는 SVN의 브랜치 이름 바꾸기. – Schwern
방금 30 분을 기다렸다가 같은 오류가 발생했습니다. –