Eclipse git checkout (也就是恢复)

是否可以使用 EGit 插件在 Eclipse 内部执行类似于 git checkout的操作?

我有一个被修改过的文件。我想放弃这些更改,并将文件恢复到源代码存储库中的内容。在 Subversion 中,这被称为恢复。在 git 中,等价的是 checkout。

我在 Team 下找不到任何看起来像结帐或恢复的菜单项,我使用的是 EGit0.6.0。

109669 次浏览

您可以通过执行(硬)重置来实现这一点。 在项目的上下文菜单中,选择 Team > Reset to... ,选择“ HEAD”和“ Hard”作为重置类型。

请注意,这样做您将丢失所有文件的更改。要恢复单个文件,请参见 这个答案

功能实际上是在那里,但它可能并不明显:

  • 确保启用了 git 修订版的 Quick diff,并且 Quick diff 基线为 HEAD (这是默认值)。
  • 打开要还原的文件。
  • 选择一切(Ctrl-A)
  • 右击快速切换栏
  • 选择“恢复选择”
  • 保存

顺便说一下,恢复在 git 行话意味着创建一个新的提交来恢复早期的提交。

这可以通过包视图中文件的上下文菜单“ Replace with/File in Git index”来完成。

在 Eclipse 版本: 3.7.0中

在“团队同步透视图”中—— > 在同步视图中右键单击文件/文件夹—— > 覆盖

另一种可能性是使用 Git Staging 视图:

  • 按下 Ctrl + 3或 Command + 3并键入以打开 Git Staging视图
    staging
  • 如果视图尚未显示存储库,请单击项目或文件
  • 您现在应该看到在 未分阶段的更改部分中修改的文件
  • 双击非暂存文件
  • 您现在可以看到一个比较视图,其中左边是您的版本,右边是更改之前的版本

现在,要撤消文件中的一些更改,请执行以下操作:

  • 在比较视图中,选择已更改的行之一
  • 选择 从右向左复制当前更改工具栏项

这将使左侧对应于此更改的右侧。保存文件以完成撤消。

撤消所有更改:

  • 在暂存视图中,右键单击非暂存文件
  • 选择 用 Git 索引中的文件替换

您还可以选择多个非暂存文件,然后右击。

返回单个文件 窗口 > 显示视图 > 其他 > Git 分级 > 非分级更改

选择要还原的文件。右击并选择 替换为头部修订

注意,此步骤无法撤消。

(我使用的是 Eclipse Version: 3.7.2 Egit Version 2.3.1.201302201838-r)

打开团队同步。找到文件并右键单击—— > Overwrite。

更新

在 Eclipse Luna (4.4.2)中 打开团队同步。找到该文件并右键单击—— > “恢复...”

对于恢复 ,可以右键单击所需的文件/目录,然后选择 替换-> 头部版本

将整个文件转换为存储库的数据:

单击要进行修订的文件夹,然后转到 GitStaging enter image description here