我该如何确定在我的ClearCase本地视图中哪些文件尚未添加到源代码控制?

14

如果我在本地的ClearCase视图中添加、删除或修改了大量文件,如何确保所有文件都已添加到源代码控制中?

3个回答

8
我在Windows上使用类似的dos命令,但我还将清除工具命令的结果通过管道传输给findstr,以'忽略'特定模式(使用正则表达式)比如.keep文件、dll文件和编译文件以及我不想添加到源中的文件夹位置。
从您视图的根目录运行以下命令。如果您有多个顶级文件夹,则需要为每个文件夹运行一次。此外,我认为这仅适用于 快照视图。
cleartool ls -recurse -view_only | findstr /vi ".dll$ .pdb$ .suo$ .keep$ .unloaded$ \\bin$ \\bin\\ \\debug$ \\debug\\ \\release$ \\release\\ \\obj$ \\obj\\ ^cleartool$" > c:\ItemsNotInSource.txt

太棒了,正是我想要的,虽然不完全是 Visual Studio 集成,但至少在使用 Visual Studio 时使命令行变得有用! - Shaun

8
您的答案是正确的,针对快照视图(您称之为“本地视图”?)
在动态视图中,一个简单的
cleartool lsprivate

只使用基本的ClearCase命令可能不够。这将无法包含已被劫持的文件(这些文件已经添加到源代码控制中,但可能已经在ClearCase不知情的情况下被修改)。

因此,我建议你在命令后加上以下内容(适用于Windows):

for /F "usebackq delims= " %i in (`cleartool ls -r -nxn ^| find "hijacked"`) do @echo %i

对于Unix系统:

cleartool ls -r -nxn | grep hijacked

这也会在检出时留下文件(尽管它们也被添加到源代码控制中,但应该列出它们,因为它们最终必须提交或取消)。
在快照视图中:

cleartool lscheckout -recur

在动态视图中:
cleartool lsprivate –co

这必须通过命令行完成吗?没有Visual Studio集成的支持吗?(我在那里添加了大部分文件) - lysergic-acid
@liortal:没有直接的“集成”支持,再加上我之前的回答(http://stackoverflow.com/questions/6088059/automatically-add-new-folders-and-files-to-source-control/6088757#6088757)提到了CC7.0.x的一个潜在错误。有时候拥有一个命令行是很方便的 ;) - VonC

7

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