git checkout
是否可以使用 EGit 插件在 Eclipse 中进行等效操作?
我有一个文件已被修改。我想放弃更改并将文件恢复到源存储库中的内容。在 Subversion 中,这称为还原。在 git 中,等价于结帐。
我在 Team 下找不到任何看起来像 checkout 或 revert 的菜单项。我正在使用 EGit 0.6.0。
git checkout
是否可以使用 EGit 插件在 Eclipse 中进行等效操作?
我有一个文件已被修改。我想放弃更改并将文件恢复到源存储库中的内容。在 Subversion 中,这称为还原。在 git 中,等价于结帐。
我在 Team 下找不到任何看起来像 checkout 或 revert 的菜单项。我正在使用 EGit 0.6.0。
这可以通过包视图中文件的上下文菜单“替换为/Git 索引中的文件”来完成。
您可以通过(硬)重置来实现这一点。在项目的上下文菜单中,选择 Team > Reset to...,选择“HEAD”和“Hard”作为重置类型。
请注意,这样做您将丢失所有文件的更改。要仅还原单个文件,请参阅此答案。
在 Eclipse 版本中:3.7.0
在“团队同步透视图”-> 右键单击同步视图中的文件/文件夹--> 覆盖
另一种可能性是使用Git Staging 视图:
staging
现在,要仅撤消文件中的某些更改,请执行以下操作:
这将使左侧对应于此更改的右侧。保存文件以完成撤消。
要撤消所有更改:
您还可以选择多个未暂存的文件,然后单击鼠标右键。
通过转到 Window > Show View > Other > Git Staging > Unstaged Changes来恢复单个文件
选择要还原的文件。右键单击并选择替换为 HEAD 版本
请注意,此步骤无法撤消。
(我使用的是 Eclipse 版本:3.7.2 Egit 版本 2.3.1.201302201838-r)
对于还原,您可以右键单击所需的文件/目录,然后选择Replace With -> HEAD version
打开团队同步。找到文件并右键单击 --> 覆盖。
更新
在 Eclipse Luna (4.4.2) 中打开团队同步。找到文件并右键单击->“还原...”
该功能实际上就在那里,但它可能并不明显:
顺便说一句,在 git lingo 中,revert 意味着创建一个新的提交来恢复之前的提交。