我想查看指定文件夹的所有子目录中的所有文件。
(使用GUI执行此操作很痛苦,因为没有递归检出选项)。
答案 0 :(得分:24)
注意:ClearCase是以文件为中心的,而不是以存储库为中心的(如SVN或CVS)。
这意味着签出所有文件很少是一个很好的解决方案(使用ClearCase可能会相当长);)
话虽如此,这个问题是完全合法的,我想指出另一种方式:
在“指定文件夹”中打开cleartool
会话:
c:\MyFolder> cleartool
cleartool> co -c "Reason for massive checkout" .../*
也有诀窍。但是作为aku的答案,它会检查所有:文件和目录......你可能大多数不需要来检查目录!
cleartool find somedir -type f -exec "cleartool checkout -c \"Reason for massive checkout\" \"%CLEARCASE_PN%\""
只会结帐文件......
现在的问题是检查所有已更改的内容。这是有问题的,因为通常并非所有都已更改,并且CleaCase会在尝试签入相同文件时触发错误消息。意思是你需要2个命令:
ct lsco -r -cvi -fmt "ci -nc \"%n\"\n" | ct
ct lsco -r -cvi -fmt "unco -rm %n\n" | ct
(“ct
为”cleartool
“:在Windows上键入”doskey ct=cleartool $*
“以设置该别名
请注意,ct ci -nc
将使用结帐阶段的评论签到
所以不没有评论的签到(如-nc
选项 - 或“没有评论” - 可以相信)。
答案 1 :(得分:8)
cleartool find somedir -exec "cleartool checkout -nc \"%CLEARCASE_PN%\""
另外,文章“ClearCase: The ten best scripts”可能会有所帮助