【发布时间】:2014-05-02 04:24:52
【问题描述】:
我在 2 次提交中移动了很多文件,在每次提交中都会检测到移动。 但是,如果我将这两个提交压缩在一起,则在第二个提交中完成的移动操作被检测为添加和删除。
关于如何解决这个问题的任何想法?
谢谢。
【问题讨论】:
标签: git git-extensions
我在 2 次提交中移动了很多文件,在每次提交中都会检测到移动。 但是,如果我将这两个提交压缩在一起,则在第二个提交中完成的移动操作被检测为添加和删除。
关于如何解决这个问题的任何想法?
谢谢。
【问题讨论】:
标签: git git-extensions
问题在于 git 总是 将文件移动存储为删除/添加。
只有稍后 git(或 git 客户端)才会尝试提供帮助并将它们显示为动作。
见:
【讨论】:
Git 不跟踪 文件移动。 Git 只跟踪内容。碰巧的是,像git diff 和git status 这样的一些命令会识别出一个文件何时被删除,另一个文件何时被添加,并且它们的内容看起来非常相似可能是文件移动而是。
因此,在您的情况下,Git 的前端能够识别单个提交的动作,但不能识别组合提交的动作。这不会改变下面存储的内容(根本没有移动),而只是一个视觉问题。
您可以尝试使用 --find-renames 参数的值来让 Git 识别动作,尽管有更多的内容更改。例如,该参数可用于 git show。
【讨论】: