如何在Eclipse中使用CVS HEAD正确回滚到旧版本?

3

我有一个CVS仓库,其中有一组Eclipse Java项目,我需要将HEAD回滚到昨天特定时间的状态,从而放弃自该时间以来发生的所有提交。

我尝试了不同的方法,包括使用“替换为另一个分支或版本”,这会给出正确的源码,但似乎CVS现在认为我实际上是“回到过去”而不是在HEAD上工作,但使用其他源码导致更改的文件出现在“团队同步”等中。此外,提交告诉我正在使用一个粘性标签并失败。

那么,告诉Eclipse 3.5.1将HEAD回滚到昨天的适当方法是什么?

4个回答

3

我通常使用以下方法来处理单个文件:

Replace With -> History

这可以在右键菜单中找到。

选择您想要的版本(它还包括本地保存的eclipse版本)。

然后提交以使其成为HEAD版本。


我不能在整个项目中看到这个,只能在单个文件中看到。你是在项目资源管理器中右键单击项目吗? - Thorbjørn Ravn Andersen
这是我的错,它确实只适用于单个文件。我会更新我的答案以反映这一点。 - Neil Foley

1

最后我不得不手动合并HEAD中的文件,并非常仔细地检查源代码,这真的很痛苦。


现在已经过去6年了,唯一合理的方法就是将代码库迁移到git上并在那里修复。 - Thorbjørn Ravn Andersen

1

除非您在CVS中有一个标签,否则您将需要检查每个文件,并选择要还原的版本。(这是由于CVS存储更改的方式不同于其他SCMs的文件系统快照)。


0

你在CVS中检入了许多文件,现在想要撤销这个操作?

我的解决方案:

标记文件(如果坏的检入后没有好的检入,可以标记所有文件)--> 右键单击“与...比较” --> 与分支或版本比较 --> 日期 --> 添加日期 --> 选择你知道HEAD是正确的日期 --> 现在你在同步视图中,标记所有文件 --> 替换 --> 再次检入文件

这并不会真正撤销你的CVS检入(历史记录),但你可以用不太多的点击获取旧状态。而且你不必逐个文件进行操作。


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