如何回滚签入Clearcase的文件?

时间:2010-01-27 13:16:30

标签: clearcase rollback

我的Clearcase存储库中有一个文件。我检查了一下并修改了它,然后重新检查了它。

我没有做任何事情,例如在我的信息流/视图中制作基线,变基或投放。

我很遗憾对此文件进行了更改 - 回想起来,我应该撤消结帐。

如何回滚修改? (或撤消,或恢复,或任何正确的命名法。)

3 个答案:

答案 0 :(得分:23)

What is described by skwllsp可以通过使用dynamic view

extended pathnames中完成
cd m:/myDynamicView/MyVob/path/to/file
cleartool lsvtree myFile
cleartool checkout -c "cancel co" myFile
copy myFile@@/main/xx myFile
cleartool checkin -nc myFile

xx是您要恢复的版本号。


但是,如果您已经制作了多个签到,包括您要取消的部分,则ClearCase允许您通过 Subtractive Merge 请参阅IBM“to remove contributions of some versions”(和merge man page

  

您可以一次性删除一系列版本中的所有更改。例如,以下命令将删除主分支上版本14到16的修订:

     
      
  • 在UNIX系统或Linux上:
  •   
cleartool merge -graphical -to opt.c -delete -version /main/14 /main/16
  
      
  • 在Windows系统上:
  •   
cleartool merge -graphical -to opt.c -delete -version \main\14 \main\16
  

您也可以一次从一个版本中删除更改。例如,以下命令仅从当前视图中检出的opt.c版本中删除版本14中的更改:

     
      
  • 在UNIX系统或Linux上:
  •   
cleartool merge -graphical -to opt.c -delete -version /main/14
  
      
  • 在Windows系统上:
  •   
cleartool merge -graphical -to opt.c -delete -version \main\14
  

或者,在上面的任何一个示例中,如果使用contributor-version-selector的版本扩展路径,则可以省略-version参数。


最后, 的一件事是<{3}}。 这个命令会无可挽回地破坏信息,这很少是一件好事。

答案 1 :(得分:3)

Clearcase可以做更好的事情,而不仅仅是制作撤消变更的新版本! 打开文件的版本历史记录,找到错误签入的版本并销毁它(选择要销毁的版本并在“版本”菜单下找到相应的命令)。 如果你想使用命令行,这也是rmver所做的。 正如VonC所说,你的这个无可挽回地破坏了你的错误。我没有看到它的缺点。

答案 2 :(得分:1)

打开此文件的版本历史记录,然后在编辑器中打开版本树中文件的正确版本,再次检出文件,将其替换为以前正确版本的内容并签入。请不要忘记比较以前的版本和上一个版本。