我需要迁移的几个SVN存储库显示出非常混乱的布局。他们中的大多数人,我都想出了如何转换它们的方法,但是其中一个正在困扰我,我在网上找不到答案。
SVN存储库具有此文件夹strucutre:
/trunk/src
/trunk/doc
/trunk/tools/toolA
/trunk/tools/toolB
/toolX
问题是,如何将其放入GIT master分支,如:
/src
/doc
/tools/toolA
/tools/toolB
/tools/toolX
答案 0 :(得分:0)
所以我必须使用--trunk /导入项目并获得完全平坦的布局?
不,最好进行经典导入,获得一个包含/trunk/src
而不是src
的存储库。
然后使用git filter-branch
(如shown here(2016)或even here(2011)),可以mv /重命名这些文件,以删除其中的任何/trunk/
他们的路。
这当然适用于单次导入,而不适用于双向导入/导出,您以后仍然希望将数据git svn dcommit
返回到原始SVN存储库。