如何使GitHub在重命名后跟踪目录历史记录?

53

一旦目录被重命名,"git log" 就不再显示其历史记录,除非您使用 "git log --follow" 强制它。

是否有一种方法可以强制GitHub网页界面上的 "history" 功能使用 "--follow"?

或者 - 是否有任何方法可以在GitHub上看到重命名前的历史记录?


5
我已经打开了一个GitHub工单,并收到以下回复:“目前还没有,这是一个已知的问题,我已经提交了一个工单来修复它。” - Guy
3个回答

37

2022年6月更新:GitHub现在支持查看文件重命名和移动的提交历史

View commit history across file renames and moves.


2011年:这个功能的需求最早出现在2009年(请求编号129),接着是2010年(请求编号897),然后是2021年(github/feedback讨论6964):

我喜欢这个功能。
可能会有其他问题阻止我们加入--follow参数。
我会看一下并告诉你。

... 现在还没有任何进展。


注:Git 2.6+ (2015年第三季度)将在命令行中提供此功能,请参见“为什么git log默认不使用git log --follow


注:Git 2.6.0已发布,其中包括此功能。可以通过将log.follow配置选项设置为true来启用日志命令中的路径更改:

git config log.follow true

8
这些链接都指向 https://github.com/contact 。我无法看到请求本身。 - Philip Durbin
2
@PhilipDurbin 是的,GitHub已经删除了它的讨论区。 - VonC
4
谢谢,这个功能请求有没有公开的跟踪记录? - Philip Durbin
2
https://github.com/github/feedback/discussions/6964 - Brian de Alwis
1
@BriandeAlwis 谢谢。我已经在我的回答中将此参考添加到请求此功能的问题/讨论列表中。 - VonC

19

有趣。+1,很好的解决方法,适用于我在上面的回答 - VonC
很遗憾,我认为GitHub重新设计了用户界面,这似乎不再起作用了。 - The Fluffy Robot

17

我已经发送了一封邮件到support@github.com (没有称谓):

Github是否会实现"git --follow"功能?如果是,我在哪里可以跟踪其进度?

(通过"git --follow",我指的是一种易于查看重命名之前对象版本的方法。当前,在项目重命名时,Github没有提供一种轻松显示目录/文件历史记录的方法。)

回复:

> Github是否会实现"git --follow"功能?如果是, 我在哪里可以跟踪其进度?

这是其他几位用户也要求的东西--我们可能会在未来添加它。目前我们没有公共问题跟踪器,但我将在特性请求列表™上再加一个+1让团队看到。

所以,“git --follow”目前还不支持。

与此同时,为了获得这样的功能,我猜你可以编写一个用户脚本来查找父对象的哈希值,(递归)查找其历史记录并呈现结果。


2
有趣的反馈,证实了我的答案。+1。下一个关于GitHub的问题是:用户投票的“功能请求列表”在哪里?;) - VonC
1
另一个更新:“感谢您联系我们。这个功能还没有被发布,但我们非常感谢您的反馈。我会在我们的内部功能请求列表上为此项目增加一个+1,但如果/何时可能会提供此功能,我不能做出任何承诺。” - user247702
另一种选择是在GitLab上设置项目镜像(或仅迁移到那里)并在那里预览历史记录。 GitLab确实支持此功能。 - jangorecki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接