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

发布于 2024-11-01 15:58:53 字数 121 浏览 1 评论 0原文

Git 不会明确跟踪复制或移动的文件,但会使用 git log --follow 等方式检测它们。在 SVN Repo 上使用 Git 并使用 git svn dcommit 推送更改时,SVN 会将这些更改识别为复制的文件吗?

Git doesn't explicitely track copied or moved files, but detect them for example with git log --follow. When using Git on an SVN Repo and pushing my changes with git svn dcommit, will SVN recognize those as copied files?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

凤舞天涯 2024-11-08 15:58:53

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

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

git-svn will properly reference the file history if it can detect the link at the time you git svn dcommit. If the only thing you do is move the file, it will work as expected and the SVN server will link file A to file B in its history.

However, if you also modify the file then squash the two commits before pushing them to SVN, then git may not properly guess that the file was renamed and you will get a deleted file and a newly created file with no apparent relationship in the SVN repository.

眼眸 2024-11-08 15:58:53

您的意思是在 SVN 日志中获得如下所示的条目:

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

是的,您得到了这样的东西。

You mean to get an entry in SVN Log like the following:

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

Yes you get such a thing.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文