git-svn是否处理移动的文件?

8

Git并没有明确跟踪复制或移动的文件,但可以通过例如git log --follow来检测它们。当我在SVN Repo上使用Git并使用git svn dcommit推送我的更改时,SVN会将这些文件识别为复制文件吗?

2个回答

7

git-svn将在您执行git svn dcommit时检测到链接,从而正确引用文件历史记录。如果您所做的唯一操作是移动文件,则其将按预期工作,并且SVN服务器将在其历史记录中将文件A链接到文件B。

然而,如果您修改文件并在将它们推送到SVN之前压缩两个提交,则git可能无法正确猜测文件是否已重命名,您将得到一个已删除的文件和一个新创建的文件,在SVN存储库中没有明显的关系。


1

您的意思是要在SVN日志中获得以下类似的条目:

   A /xxxx/xyz (from /xxxx/zzzz.xxx:5555)

是的,你可以得到这样的东西。


如果没有使用“--stop-on-copy”,那么“svn log”是否会显示复制源文件的历史记录? - dronus
不应该有任何区别。 - khmarbaise

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接