1

我有一个带有一些悬空提交的存储库:

o (master) commit 3
o commit 2
o
| o (tag: danglings) dangling commit 2
| o dangling commit 1
|/
o commit 1
o initial commit

我已经用标签标记了最新的悬空提交,以确保它不会丢失,以防我将来某个时候需要它。

但是,在 egits 历史记录中查看该存储库时,我没有得到悬空提交。它们根本没有显示。当我创建一个指向dangling commit 2包括标记在内的两个提交的分支时。

如何防止这种情况?我想查看所有内容,而不仅仅是 egit 历史视图中的分支。

编辑:添加了一个不错的截图蒙太奇:

截图蒙太奇 第一个显示 master 已签出,并且不存在悬空分支。当然,悬空提交-tagdangling存在!

在第二个中,我创建了一个分支,称为dangling提交上标记的标记点,dangling并将其签出。

请注意,当我在第二张图片上查看 master 时,视图不会改变(除了粗体字master和移动)。HEAD

4

1 回答 1

1

robinst在评论中提到:

这只是 EGit 中的一个错误,仅在带注释的标签中发生,请参阅错误 417655,它建议org.eclipse.egit.ui.internal.history.GitHistoryPage.
目标 Egit 3.1


原答案:

这个 Egit 练习讨论了历史视图:

https://raw.github.com/stefanlay/gittraining/master/exercises/egit/git/history-view-6.png

考虑此视图中可用的不同按钮:

https://raw.github.com/stefanlay/gittraining/master/exercises/egit/git/history-view-buttons.png

该教程提到:

提示:如果您在使用不同的过滤器时迷失了方向,并且历史记录未显示您所期望的内容,请将其重新设置以显示所有内容。
因此,请确保 ' Show all branches and tags' ( a) 已打开并选择了 ' Show all changes in repository' ( e)。

这两个按钮应该潜在地向您显示所有可访问的(至少是标记的)提交。


Egit用户指南的“过滤设置”部分很清楚:

视图工具栏中接下来的四个切换按钮控制如何根据当前输入过滤显示的提交。

http://wiki.eclipse.org/images/0/01/Egit-0.9-history-view-config.png

这些按钮用作单选按钮,即四个按钮之一必须始终按下。

  • 如果“ Repository”按钮处于关闭状态,则不会过滤提交日志并显示从当前签出的分支可访问的所有提交(或所有提交,有关“所有分支”操作,请参见下文)
  • 如果“ Project”按钮处于关闭状态,则过滤提交日志以显示影响包含当前输入的项目中的任何资源的所有提交
  • 如果“ Folder”开关关闭,则过滤提交日志以显示影响当前输入的父文件夹中的任何资源的所有提交
  • 如果“ Resource”按钮处于关闭状态,则过滤提交日志以仅显示影响当前输入的提交;视图菜单项Show > Follow Renames允许切换所选资源的重命名是否应跟随此过滤器

请注意,并非所有滤波器设置和电流输入的组合都是有意义的;例如,如果当前输入是一个项目,“项目”选项实际上与“资源”选项相同。

但是“所有分支”部分添加:

此切换激活“所有分支”模式。
默认情况下,只有那些可以从当前签出的提交到达的提交显示在提交日志中,即提交图以当前签出的提交结束,并且不显示较新的提交。
如果此按钮处于关闭状态,则所有提交都将显示在提交日志中。

http://wiki.eclipse.org/images/c/c7/Egit-0.9-history-view-allbranchesToggle.png

在您的情况下,我不确定仅在标签引用时是否显示提交。
只有分支使这些提交可见。

于 2013-09-11T13:15:41.300 回答