Egit:检查两个不同的版本

时间:2011-09-23 11:33:20

标签: eclipse git

在Eclipse Egit中检查项目的两个不同版本并将它们显示在单独的目录中的最佳方法是什么?

我的情况如下。我正在研究一个项目并做了一些很好的改变和一些不好的改变(状态A)。我想查看我的项目的先前工作版本(状态B),并将状态A中的一些好的更改复制并粘贴到状态B.每次我尝试检查任何内容时,它只是替换包浏览器中显示的文件

2 个答案:

答案 0 :(得分:1)

这是因为一个Git存储库有一个工作目录,而工作目录反映了所有分支更改等。因此,如果您需要两个版本,则需要两个存储库(只需克隆一个存储库)。由于您无法在一个Eclipse工作区中导入两个具有相同名称的项目,因此您必须在结帐后和项目导入之前重命名一个项目。

但您也可以使用比较模式。选择项目,选择Compare with - >分支,标记或参考,并选择要与之比较的其他分支。然后,您可以将其他分支中的内容添加到当前文件中。

答案 1 :(得分:1)

你所要求的并不是很好,但这就是你如何做到的。

您将获取现有存储库,并将其克隆到新的存储库。在新的仓库中,您将检查您的“到”版本(通过分支或标记或提交ID),在旧版本中,您将检查“从”版本。然后,您将Eclipse指向两个目录以从中创建项目。

然后你在Eclipse中有两个项目,每个项目包含一个不同版本的工作目录,你可以手动将代码从“从”移动到“到”。一旦你的“to”项目按你想要的方式进行,提交,删除“from”repo和project,Bob就是你的叔叔。

执行此操作的git-ish方法是使用git bisect查找包含错误更改的提交,然后全部或部分还原该提交。