经过大量搜索,我没有找到一种令人满意的方法,该方法易于使用,可以在 Git 中查看移动文件的完整历史,更重要的是在 Gitk 中。使用git log --follow [filePath]
甚至gitk --follow [filePath]
为您提供文件所涉及的提交,但不会向您显示文件在移动之前的实际更改历史记录。因此,我想出了一个粗略但简单的解决方法。
gitk
对已移动的文件执行 a :gitk [newFilePath]
。复制第一个提交的 SHA1 ID,这应该是文件被移动的提交。gitk
对复制的 SHA1 ID执行 agitk [SHA1ID]
:。最新的提交应该是移动发生的时间。找到移动的文件并复制旧路径。- 对
gitk
我们刚刚复制的 SHA1 ID 和旧文件路径执行以下操作:gitk [SHA1ID] -- [oldFilePath]
此过程将允许您在移动之前查看文件的历史记录。如果有多次移动,则可以重复上述过程。
如果有任何更好的解决方案来解决这个问题,特别是如果有一种方法可以将这些步骤结合起来以显示完整的历史和移动,我们将不胜感激。