提交视图之间的差异
在 GitHub Enterprise 上,实质上有两种查看仓库提交历史记录的方式:
- 直接导航到仓库的提交页面
- 单击文件,然后选择 History(历史),获得 特定文件的提交历史记录
有时,您可能注意到这两个提交页面显示的信息不同。 这是因为,单个文件的历史记录可能忽略在仓库提交历史记录中找到的提交。
实质上,Git 有几种不同的方式来显示仓库的历史记录。 当 Git 显示单个文件的历史记录时,会通过忽略未更改文件的提交来“简化”历史记录。 Git 不是查看每一个提交来决定其是否接触文件,而是会省略整个分支,前提是该分支合并时没有影响文件的最终内容。 将不会显示接触文件的分支上的任何提交。
对于单个文件的提交历史记录,GitHub Enterprise 明确遵循此简单策略,这出于两个原因:
-
它通过删除实际上没有对最终结果做出贡献的提交来简化历史记录 ( 例如,如果某个分支更改后被还原,或者如果一个侧分支包含某些已被优选和清除的更改的杂乱版本)
-
计算效率显著提高,因为我们可以避免查看历史记录中不影响文件的整个侧分支
当然,此截断视图可能并不总是包含您需要的信息。 有时,您确实想了解失败的实验或者杂乱的历史记录, 甚至找出可疑合并中的问题。 如上所诉,Git 有许多查看历史记录的方法,并且 GitHub Enterprise 会在仓库的提交页面提供信息更多的视图。
有关 Git 如何考虑提交历史记录的详细信息,可阅读 Git 日志
帮助文章部分的 “历史记录简化”。