我基本上有以下git repo布局
x ---- a -------------- b -------------- c ---->
y -- 1 -- 2 -- ┛ z -- i -- j -- ┛
其中x
,y
,z
是初始提交。我有这些多次初始提交,因为我使用
git fetch git://github.com/<user>/<repo>.git refs/heads/master:refs/heads/<repo>
git merge --no-commit <repo>
git read-tree --reset -u HEAD
git read-tree -u --prefix=lib/<repo> <repo>
git commit -m "Pulling <repo>"
git branch -d <repo>
多次。所有子模块基本上都具有相同的文件布局。
要将git repo导入svn,我初始化了一个空的svn存储库并通过
克隆它git svn clone http://some/svn/repo/my-project
然后我试了
cd my-project
git remote add dev /path/to/working/git/big-repository
git pull dev master
git svn rebase
但是由于一些合并错误似乎发生,因为所有子模块的顶层都有相同的文件(pom.xml
)
有什么方法可以将git存储库导入svn保存历史记录吗?
答案 0 :(得分:0)
希望其他人能提供更优雅的答案,但如果问题确实是这个冲突的文件,您可以使用git filter-branch
从项目历史记录中删除该文件。
This page有一个例子。