Subclipse中的箭头图标是什么意思?

112
以下屏幕截图中的图标代表什么意思?这些图标来自于Subclipse,一款适用于Eclipse的SVN插件。 outgoing 我不是在问基本文件图标,我知道那些(HTML文件和Java源文件)。我在问右指向的深灰色箭头,标有“outgoing”。这意味着什么?从IDE到repo还是从repo到IDE?为什么箭头里面有减号?有时,我看到加号;其他时候,只有空箭头。这有什么区别?
还有左指向的蓝色箭头和双头红箭头;它们代表什么意思?当它们包含其他符号时,比如-+,又代表什么?
注:这个问题被编辑得相当彻底。通常情况下我不会改变这么多内容,但该问题几乎没有活动,而且是一个重复问题。原始问题要求提供一个“图标词汇表”,以解释Subclipse的所有或大部分图标,类似于Eclipse的这个。我仍然很想知道其中一个,但似乎没有这样的资源。

2
原来我所询问的图标更恰当地被称为图标装饰器。 - Pops
1
@Tim Stone 在下面提供了一个绝妙的答案。你也可以在这里找到一个非常有用的 Subclipse 图标键 链接。我一直在使用它。 - hotshot309
减号代表文件删除,加号表示添加新文件。Eclipse自己称这些小的附加图标为“装饰物”:http://help.eclipse.org/juno/index.jsp?topic=/org.eclipse.jdt.doc.user/reference/ref-icons.htm并非全部图标都有文档记录,这一点在错误报告中得到了解决:https://bugs.eclipse.org/bugs/show_bug.cgi?id=348154 - Stijn de Witt
1个回答

381

与Subversion代码库一起工作时,远程更改(存储库中的更改)是传入更改(远程→本地),而本地更改是传出更改(本地→远程)。

在比较本地和远程副本的视图中,传入的更改用带有蓝色向左箭头的符号表示,而传出的更改用带有灰色向右箭头的符号表示。这些箭头可以装饰以指示更具体的操作。

另一方面,软件包资源视图使用不同的一组图标表示文件的状态。这些图标是最常见的,下面我们来看看它们:

被版本控制忽略的文件 - 版本控制系统忽略的文件。你可以通过 窗口 → 首选项 → 团队 → 忽略的资源 控制要忽略的资源。
未被版本控制的文件 - 未被版本控制的文件。这些通常是未提交到存储库中的新文件。
需要添加到远程存储库的已版本化文件 - 需要添加到远程存储库的已版本化文件。这些通常是已重命名或移动到不同目录的文件。
已删除的文件夹 - 已删除的文件夹。这些是你在本地删除但尚未提交更改到存储库中的文件夹。注意,通常情况下,当文件被本地删除时,它们会从视图中移除,因此通常不能使用此图标查看文件。
已同步的文件 - 没有本地更改的文件。
本地更改的文件 - 有本地未提交更改的文件。
已锁定的文件 - 已锁定 的文件。
需要锁定的文件 - 需要加锁才能编辑的文件。这些通常是不能轻松合并的文件(例如二进制文件),但可能有许多编辑器。当文件的 svn:needs-lock 属性被设置时,Subversion 将尝试在文件系统中将这些文件设置为只读以强制正确的锁定协商过程。
冲突的文件 - 冲突的文件。这些通常是在提交/更新时发生冲突的文件,你将其标记为稍后解决。
树冲突的文件 - 具有树冲突的文件。这些通常是具有本地更改的文件,但因上次本地副本更新以来,这些文件已被移动、删除或重命名。
外部文件 - 项目外的文件。链接的外部文件不能提交到存储库中。
切换的文件 切换的文件2 - 已切换的文件。这些文件属于不同的工作副本而非其本地父目录。

在同步视图中(例如通过“与存储库同步”或“提交”),如前所述,有标志显示更改发生的方向以及有关该更改的其他信息。具体描述如下:

发出的
Commit Changes - 文件内容已被修改并将提交到代码库中。
Commit Addition - 新添加到代码库中的文件。在移动或重命名文件时,可能会与文件删除同时进行。
Commit Removal - 将从代码库中删除的文件。在移动或重命名文件时,可能会与文件添加同时进行。
Property Change - 在提交对话框中具有属性更改的文件。在同步选项卡中,属性更改目前被视为普通文件修改 (Commit Changes)。

接收的
Remote Changes - 已在代码库中提交的包含更改内容的文件,将应用于本地副本。
Pull Addition - 从代码库中添加到本地副本的新文件。与发出的文件添加相似,这可能是移动或重命名的结果。
Pull Removal - 因已从代码库中删除而将从本地副本中删除的文件。与发出的文件删除相似,这可能是移动或重命名的结果。

冲突
Conflicting Versions - 已在本地副本和代码库独立更改的文件,导致需要解决冲突。解决此条件涉及打开冲突视图或强制在本地或远程覆盖更改。
Synchronization Tree Conflict - 具有树冲突的文件。当一个文件在一端(本地或远程)上有新变化,并且在另一端移动、删除或重命名该文件时,就会出现这种情况。

最后,选择与代码库同步选项将打开同步选项卡 (Synchronize Tab),其中包含以下按钮:

同步源 - 点击后将本地副本与当前选择的仓库同步。从下拉菜单中选择可在不同的远程代码库之间进行切换。
显示传入 - 仅显示传入更改(远程→本地)。
显示传出 - 仅显示传出更改(本地→远程)。
显示传入和传出 - 显示传入和传出更改(远程↔本地)。
显示冲突 - 显示冲突更改。
更新传入 - 在提示后更新所有本地资源以获取传入更改。
提交传出 - 弹出提交对话框以提交所有传出更改。
显示变更集 - 将更改列表按修订版本拆分。

还有一些未涵盖的其他视图具有其他图标,但这应该是一个很好的开始。如果有任何重要的遗漏或者这些描述与您的实际体验不同,请告诉我。


13
哇,我觉得我不可能得到比这更好的答案了。谢谢! - Pops
7
终于,subclipse象形文字的Rosetta Stone被找到了! - remi
太好了!我发现你的答案非常有用,但我认为你错过了这个 https://dev59.com/N2sz5IYBdhLWcg3w8Mgb - user2791950
是否有类似的列表或子版本控制系统? - ziggy
@user2791950所提到的参考是关于subversive而不是subclipse,尽管帖子的标题指示了subclipse。请注意这两个产品有一些相似之处,但行为不同。 - Nelda.techspiress
显示剩余6条评论

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