107

在 Eclipse Helios Java Package Explorer 中,我看到 Java 类图标在“J”右侧显示一个小问号,类似于 [J?]。这个图标显示在我项目的一个包中的每个类上,但我在文档中找不到对此的解释。

在此处输入图像描述

在某些时候,我希望它们会消失并被小的橙色矩形所取代。(我也不确定它们的含义,但不太担心它们的内涵。)我想这个问题指向一个更大的问题,这些图标中的任何一个是否在某个地方定义在一起?

4

6 回答 6

139

这意味着该类尚未添加到存储库中。

如果您的项目已签出(很可能是一个 CVS 项目)并且您添加了一个新的类文件,它将具有?图标。

对于其他 CVS 标签装饰,请查看http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.platform.doc.user/reference/ref-cvs-decorations.htm

于 2010-11-29T19:17:02.297 回答
27

对于某些版本控制插件,这意味着本地文件尚未与版本控制存储库共享。(在我的安装中,这包括 CVS 和 git 的插件,但不包括 Perforce。)

您有时可以在Team/X/Label Decorations下的插件首选项中看到这些装饰的列表,其中 X 描述了版本控制系统。

例如,对于 CVS,列表如下所示:

在此处输入图像描述

这些装饰被添加到 Eclipse 提供的对象图标中。例如,下面是 Java 开发环境的图标表

于 2010-11-29T19:19:43.817 回答
24

听起来您正在使用 Subclipse;那是对的吗?如果是这样,在Tim Stone的这个答案中,有很多装饰器及其描述。

这是您案例的相关片段:

未版本化文件- 不受版本控制的文件。这些通常是您尚未提交到存储库的新文件。
同步文件- 没有本地更改的文件。

于 2010-11-29T19:46:57.427 回答
6

在启用的项目中,小问号 (?) 表示您的文件尚未添加到 SVN 存储库。

橙色的小矩形表示您的文件已提交到存储库中。

星号 (*) 表示本地更改。

于 2010-11-29T19:18:54.630 回答
6

这些图标是 Egit 向您显示 git 中当前文件/文件夹状态的一种方式。您可能想检查一下:

描述 Egit 的 Eclipse 图标的图像

  • (文件夹)——文件夹下至少有一个文件脏;这意味着它在工作树中的更改既不在索引中,也不在存储库中。
  • tracked - Git 存储库已知该资源。untracked - Git 存储库不知道该资源。
  • 忽略- Git 团队提供者忽略该资源。这里只有 Team -> Ignored Resources 下的首选项设置和“派生”标志是相关的。不考虑 .gitignore 文件。
  • - 资源在工作树中的更改既不在索引中,也不在存储库中。
  • staged - 资源具有添加到索引的更改。并不是说目前只能在资源上下文菜单上的提交对话框中添加到索引。
  • 部分暂存- 资源具有添加到索引中的更改以及工作树中的更改,这些更改既不在索引中也不在存储库中。
  • 已添加- 资源尚未被 Git 存储库跟踪,但已添加到 Git 存储库。
  • 已移除- 暂存资源以从 Git 存储库中移除。
  • 冲突- 文件存在合并冲突。
  • 假设有效- 资源具有“假设不变”标志。这意味着 Git 停止检查工作树文件是否有可能的修改,因此您需要手动取消设置该位以告诉 Git 当您更改工作树文件时。可以使用菜单操作 Team->Assume 未更改(或在命令行上使用 git update-index--assume-unchanged)打开此设置。
于 2015-04-07T21:15:36.717 回答
2

这是因为您的项目已链接到 git-hub 存储库,并且上面有问号的文件尚未添加。如果要删除此标志,则必须将此文件添加到 git-hub 存储库。

于 2016-01-19T09:40:43.590 回答