如何在RTC源代码控制中恢复已删除的组件

4

能否恢复已删除的组件?

我已经创建了流的快照,并且可以通过查看快照来查看已删除的组件。是否可以从快照中重新添加组件到流中? 还是有另一种方法来恢复组件?

(不像ClearCase,我需要使用组件基线重定基UCM流)

2个回答

4
如果您所说的“删除”是指从磁盘中删除,您可以简单地将仓库工作区重新加载到本地工作区(或沙盒)中。
注意:本地工作区或沙盒与ClearCase快照视图相同,但您不会称之为“快照”。
在RTC中,快照是一个全局标签,其中包含了流上所有组件的最新版本。
如果您所说的“删除”是指从仓库工作区中删除,那么是的,您可以将其添加回来(它仍然在流中),然后点击保存。
如果您所说的“删除”是指从流本身中删除,您可以在流级别上将其添加回来(打开该流,在“组件”部分中单击“添加”)。如果它仍在您的仓库工作区中,则可以将其传送回流中。
OP补充道:

我意思是“从流本身中删除”,那么如果该组件也被从我的仓库工作区中删除,那么它就无法从快照中恢复了吗?

是的,它可以从快照中恢复:

我可以:

  • 从快照中创建一个新的工作区,
  • 将我的 flowtarget 更新为这个新创建的仓库,并从此处接受组件。
  • 然后将流目标更新为删除组件的流,
  • 将组件传递到流中。
我确认这应该可以工作。
您确实可以从快照中创建仓库工作区:这就是使用户能够快速调试具有“失败构建”状态的构建记录的原因:每个构建首先在它们将要操作的条件上放置一个快照。

我的意思是“从流本身中删除”,因此如果组件也从我的存储库工作区中删除,则无法从快照中还原。我可以从快照创建一个新的工作区,将我的流目标更新为这个新创建的存储库,并从这里接受组件。然后将流目标更新为删除组件的流,并将组件传递到流中。 - blue-sky
1
@user470184,你恢复组件的方法看起来很可靠,我已经在答案中包含了它。 - VonC

0

如果从流本身中删除了某个组件,您可以在流级别上将其添加回来(打开该流,在“组件”部分中,从基线或快照中单击“添加”,如果您记得完整或部分组件名称,则可以搜索它)。最后保存流。


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