我在2次提交中移动了很多文件,在每次提交中都检测到了移动。 但是,如果我将那些2提交压缩到第二次提交中完成的移动操作被检测为添加和删除。
有关如何解决此问题的任何想法?
感谢。
答案 0 :(得分:3)
Git没有跟踪文件移动。 Git只跟踪内容。恰好是某些命令(例如git diff
和git status
)会识别何时删除了一个文件,添加了另一个文件,并且它们的内容看起来与非常相似它可能具有是一个文件移动。
因此,在您的情况下,Git的前端能够识别单个提交的移动,但不能识别组合的移动。这不会改变下面存储的内容(根本没有移动),但只是一个视觉问题。
您可以尝试使用--find-renames
参数的值进行播放,以使Git能够识别移动,尽管内容更改了更多内容。该参数可用于git show。
答案 1 :(得分:2)
问题是git 始终将文件移动为删除/添加。
只有稍后git(或git客户端)才会尝试提供帮助并将其显示为移动。
请参阅: