我正试图以递归方式从特定分支中删除某些版本/文件。
find
提供正确的文件。现在最多可以rmver
删除版本,但这会给我一个错误。我正在努力学习语法。
cleartool> find Component\Test -element "brtype(P_Testing_device)" -exec "rmver -f \"%CLEARCASE_PN%@@\main\G_Testing_device\P_Testing_device\LATEST\""
cleartool: Error: Extra arguments: "%CLEARCASE_PN%@@\main\G_Testing_device\P_Testing_device\LATEST\"
这有什么问题? 你会如何以递归方式从分支中删除版本?
答案 0 :(得分:2)
首先不要,如果你可以避免它。正如我在“rmver
”中解释的那样,How do I undo a checkin in ClearCase remote client非常危险
如果您要删除的版本(最终来自ClearCase)附加了超链接,例如合并链接(使用UCM传递或重新链接您的链接),您可能会遇到许多“悬空超链接”,这是不好的。
其次,我会先尝试:
find Component\Test -element "brtype(P_Testing_device)" -exec 'rmver -f "%CLEARCASE_PN%@@\main\G_Testing_device\P_Testing_device\LATEST"'
对弱引号和强引号的任何问题进行排序(如“CLEARCASE_XPN
not parsed as variable in clearcase command”中所述)
如果这不起作用,我建议找到所有正确的版本并将它们放入文件中,然后将该文件的内容传送到cleartool rmver
。
更安全的路线是cleartool lock -obs
分支,使其对于未来的版本树不可修改且不可见。