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