11

我已经安装了 MercurialEclipse 插件。我发现它很难使用。

我在 NetBeans 中使用 Mercurial 支持已经有一段时间了,如果可能的话,我希望能够在 Eclipse 中做很多事情:

  • 在 NetBeans 中,对源代码的任何更改都会在行号区域突出显示。新代码为绿色,修改代码为蓝色,删除代码为红色。

  • 项目资源管理器中的文件显示为蓝色或绿色,分别表示已修改和新建。

在此处输入图像描述

  • 在 NetBeans 中,我可以右键单击项目资源管理器中的任何目录,然后转到Mercurial->diff以获取自上次提交以来已更改的所有文件(在我单击的目录中)的可视差异。

    当我在 Eclipse 中右键单击一个目录时,我得到了一个比较,但只有一个选项(彼此)被禁用。

    更糟糕的是,当我右键单击我知道已更改的实际文件并进行比较时,我得到了 3 个选项(本地历史记录、父变更集、不同的变更集)。如果我单击父变更集,它不会给我一个差异。我认为这是因为这是自 3 次提交以来文件第一次更改。从那以后就没有了,我只想看看我所做的更改,以便在提交之前对其进行审查。我想向我展示自上次提交以来我所做的更改,即我将提交的更改。

请注意,我并不是要抨击 Eclipse,也不是要赞美 NetBeans。我只是想知道是否有一种方法可以像我在 NetBeans 中习惯的那样在 Eclipse 中设置工作流。

4

2 回答 2

3

您请求的某些内容并非特定于您正在使用的 VCS,它们是 Eclipse 团队支持的一部分,因此它们适用于任何 VCS 系统。

1)显示代码更改:最接近的 Eclipse 是Team -> Show Annotations,但我认为这不会显示当前版本中添加/更改/删除的行。我会就此向 Eclipse 提出增强请求。

2) Eclipse 为添加和更改的文件显示不同的图标。您应该会看到一个蓝色的 + 表示添加的文件,而棕色的 * 表示已更改的文件。

3)为了轻松地从所提交的内容中获得差异,您可以执行Team -> Synchronize。这将打开同步视图。另一种方法是您可以在任何级别执行 Team -> Commit,然后在文件列表中双击该文件,该文件将显示文件之间的比较(一次显示一个文件)。您可以做的另一件事是选择比较 -> 另一个修订...并在对话框中选择所需的修订(这将在单个比较编辑器中显示所有包含的文件)。最后,特定文件上的Compare -> Parent Changeset确实为我显示了来自已提交父级的更改,即使它在最近的修订版中没有更改。您可能在 Mercurial Eclipse 中遇到了错误。

确保您使用的是最新版本的 Eclispe 和 Mercurial Eclipse。Mercurial Eclipse 非常活跃,他们一直在添加和修复东西。我使用 Mercurial Ecipse 1.9.1 在 Eclipse 3.7.1 上对此进行了测试。

于 2011-12-13T11:45:58.753 回答
2

这是一个较老的问题,但我遇到了同样的问题,并且发现此信息很有用。

我正在从 netbeans 过渡到 eclipse。我不是专家,但是:

  1. 对于文本突出显示,您可以使用“快速差异”a。Windows -> 首选项 -> 常规 -> 编辑器 -> quickdiff b. 使用 mercurial quickdiff 启用快速差异似乎主要是模仿 netbeans。
  2. 对于文件变更集的差异。我认为您需要使用前面提到的 Team Syncroniztion 透视图。一旦你习惯了它,它实际上非常光滑。
于 2012-03-09T02:02:02.660 回答