我用git-svn
来创建一个SVN仓库的git镜像。 SVN内部的结构有点不合标准,所以git创建了一个分支,它没有与master
分支共同提交。git - 设置承诺的父母没有rebase
A---B---C topic
D---E---F---G master
我知道犯A
基于关闭提交E
我敢肯定,我已经解决造成混帐不承认(使用filter-branch
)这一事实的问题。我想要做的是重新连接topic
到master
分支,设置E
为A
父:
A---B---C topic
/
D---E---F---G master
git-rebase
似乎不适合我,因为参与比较提交A
列表创建的存在于master
中的大量文件,导致大量冲突。
从我对git的理解来看,只需设置E
作为A
的父项应该足以解决所有问题。
这可能吗?如果是这样,我该怎么做?
有没有机会重新启动svn的git镜像,将“branches”指向正确的目录?或者先修复svn结构? – stefanw 2010-11-12 12:30:03
实际上,回购确实使用标准干线/标签/分支布局。然而,我试图修复的分支是通过仅复制trunk的子路径而创建的 - 猜测对于git-svn来说,这太过分了。 – 2010-11-25 16:05:14
rebase有一个'root'选项。如果需要,可以使用'to'和'preserve-merges'。 – 2012-10-23 18:26:35