2013-06-20 111 views
22

重命名文件夹(git mv foldername newfoldername)后,此文件夹在Github中的历史记录已删除。我仍然可以查看任何文件的完整历史记录的文件夹中,如果我克隆摄制和运行...文件夹重命名后在GitHub中查看历史记录

git log --follow ./newfoldername/file 

但有可能获得历史可见在Github上重命名的文件夹? 这是一个Github问题,git修订历史按预期工作。 谢谢

+0

因为它不涉及到Git本身,我改了称呼。而且,文件/目录级别的历史记录在Git中并未真正追踪*,而是重建*。如果GitHub可以按照你想要的方式进行重建,那么你可能已经看到了它。 –

+4

请注意,Git没有明确地跟踪文件的重命名(重命名的文件导致它的旧条目从代表该文件目录的下一个树对象中丢失,并且新条目添加到该文件中),并且重命名目录结果到单个更改为表示封闭目录状态的树对象的适当条目。正如@larsmans正确指出的那样,重命名是通过'git log'机制(有几个旋钮来影响这个机制)*猜测出来的。所以我不会屏住呼吸,找到适当的解决方案来解决您的问题。 – kostix

+0

还要注意,'git'根本不跟踪文件夹的历史记录,超出了“此文件位于此特定树/提交中的此文件夹中”的概念...... – twalberg

回答

8

你只需要在发生重命名之前进行提交。您可以在本地或通过Blame功能检索它。

当您检索到此类提交的URL后,您只需点击历史记录即可。然后,您将在重命名之前看到文件的所有提交历史记录。

+0

是否有任何方法可以在API级别执行此操作,无论是'REST'或者'Graphql' –

14

我写了一个chrome extension来启用它。 在github上。

Github Follow Extension

+0

不错的扩展,+1 – mike

+0

比较旧的线程,但是你维护这个吗?因为它目前看起来没有效果:(下面是一些提交的动作:https://github.com/Rene-Sackers/gta-network-typescript/commit/f61486b6b456830c8ea3f648c325fb26186326ea –

+0

您需要查看一个文件,而不是一个提交,例如:https://github.com/Rene-Sackers/gta-network-typescript/commits/f61486b6b456830c8ea3f648c325fb26186326ea/content/types-gtanetwork/Declarations.d.ts – dailysleaze

相关问题