如果我在本地 ClearCase 视图中添加/删除/修改了大量文件,我如何确定所有文件都已添加到源代码管理中?
Grant Wagner
问问题
10631 次
3 回答
8
您的答案是正确的,对于快照视图(您称之为“本地视图”?)
在动态视图中,一个简单的
cleartool lsprivate
就足够了。
但这会遗漏被劫持的文件(这些文件已经添加到源代码控制中,但可能在 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
于 2008-10-10T15:47:34.297 回答
8
我对 Windows 使用了类似的 dos 命令,但我还将 clear 工具命令的结果通过管道传递给 findstr 以“忽略”特定模式(使用正则表达式),例如 .keep 文件、dll 以及编译的文件和我不使用的文件夹位置不想添加到源。
从视图的根文件夹中运行以下命令。如果您有多个顶级文件夹,那么您需要为每个文件夹运行一次。另外,我相信这仅适用于SnapShot视图。
cleartool ls -recurse -view_only | findstr /vi ".dll$ .pdb$ .suo$ .keep$ .unloaded$ \\bin$ \\bin\\ \\debug$ \\debug\\ \\release$ \\release\\ \\obj$ \\obj\\ ^cleartool$" > c:\ItemsNotInSource.txt
于 2012-03-22T17:17:04.303 回答
7
cleartool ls -view_only -r
从您的本地视图 VOB 目录中使用。
要递归地将任何文件添加到仅在本地视图中的源代码管理,请参阅如何使用 ClearCase 递归地“添加到源代码管理......”?.
于 2008-10-10T15:25:28.490 回答