Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Git及时向前跟踪文件_Git_Logging_Trace_Change Tracking - Fatal编程技术网

使用Git及时向前跟踪文件

使用Git及时向前跟踪文件,git,logging,trace,change-tracking,Git,Logging,Trace,Change Tracking,我有以下问题: 在一个巨大的存储库中,有一个我感兴趣的类,但它已经不在存储库中了。经过一番搜索,我在早期的状态中偶然发现了它,现在我想将这个类追溯到现在 通常,人们会使用Git日志向后跟踪文件的历史记录(以检查谁修改了该类),但由于该类已被删除或移动,我希望找到该类已被删除或移动的提交(特别是找到说明删除原因的提交)。因此,我需要一种机制来追踪该文件的历史,直到“未来” 为了将其可视化,我创建了一个简单的图形,显示了一系列提交(气泡): 红色气泡是不包含该类的提交 绿色气泡是包含类的提交(在

我有以下问题: 在一个巨大的存储库中,有一个我感兴趣的类,但它已经不在存储库中了。经过一番搜索,我在早期的状态中偶然发现了它,现在我想将这个类追溯到现在

通常,人们会使用Git日志向后跟踪文件的历史记录(以检查谁修改了该类),但由于该类已被删除或移动,我希望找到该类已被删除或移动的提交(特别是找到说明删除原因的提交)。因此,我需要一种机制来追踪该文件的历史,直到“未来”

为了将其可视化,我创建了一个简单的图形,显示了一系列提交(气泡):

  • 红色气泡是不包含该类的提交
  • 绿色气泡是包含类的提交(在特定时间点(1.1),对象被添加并在代码库中保留一段时间)
  • 蓝色气泡(4)是commit,在这里类被删除了(也是我感兴趣的一个,因为它可能包含删除的原因、原因或移动到的位置)
  • 带有黄色边框的绿色气泡是commit,我在这里找到了类

现在以一种直观的方式:我希望绿线一直延伸到蓝线(1.2->3->4),而当我签出状态1.2和调用日志时,我只得到1.2->1.1。

没有简单的方法可以追溯到未来,但你可以搜索历史,找到它消失的地方

如果您有文件的路径,则显示如何定位提交:

git log -- path/to/file
这将显示所有涉及该文件的提交。然后,您可以检查列出的第一个提交,查看它是删除还是移动

如果文件名与众不同,并且您认为该文件可能已重命名:

git log --name-only

您可以在这些结果中搜索文件名。

这对我来说已经足够接近了。我找到了。它被转移到另一个项目。谢谢