是否可以只将SVN存储库的一部分迁移到Git?请注意,我必须迁移位于根目录中的多个文件夹,但不是全部。例如,给定以下存储库:
REPO_ROOT
- FOLDER_A
- FOLDER_B
- FOLDER_C
- FOLDER_D
我只想迁移到 Git 存储库FOLDER_B
并FOLDER_C
是的。您必须从文件夹的 URL 克隆,并且(对于 Git 1.6.4+)使用(其他人除外)选项--no-minimize-url
git svn clone --prefix=svn/ --authors-file=authors.txt --no-minimize-url http://PEPO/PATH/TO/FOLDER/ ...
我找到了一个方便的解决方案:
- 克隆您想要的SVN部分
- 转到 git 存储库的根文件夹
- 键入
git remote add -f tmp_repo PATH_OF_THE_SVN_CONE
- 类型
git merge -s ours –no-commit tmp_repo/master
- 类型
git read-tree –prefix=Demo/Kinect -u Kinect/master
- 犯
- 检查一切是否正常
- 推
- 类型
git remote remove tmp_repo