Clearcase 如果相同,则什么是用于撤消签出的Cleartool命令?

Clearcase 如果相同,则什么是用于撤消签出的Cleartool命令?,clearcase,cleartool,Clearcase,Cleartool,我签出powershell文件并对其签名(如果尚未签名),然后重新签入 但我的登记失败了,因为我说的和前任的一样。如果与以前的版本相同,则什么是cleartool命令来撤消签出?您只需尝试: cleartool unco 即“ 现在,您不能在checkin命令本身中执行此操作 您可以做的是一个cleartool diff:如果没有检测到差异,则您取消COO,如果有,则您签入 你有详细的方法: 您可能需要与以前的版本进行差异,但可以使用类似于diff@@@main/branch/version的

我签出powershell文件并对其签名(如果尚未签名),然后重新签入

但我的登记失败了,因为我说的和前任的一样。如果与以前的版本相同,则什么是cleartool命令来撤消签出?

您只需尝试:

cleartool unco
即“

现在,您不能在checkin命令本身中执行此操作

您可以做的是一个
cleartool diff
:如果没有检测到差异,则您取消COO,如果有,则您签入

你有详细的方法:

您可能需要与以前的版本进行差异,但可以使用类似于
diff@@@main/branch/version
的内容,如果不同(或者差异返回的任何内容,如果不同),则允许签入成功)。否则可能会
unco-rm
文件

或:

在makefile中,我们有一个部分,每个文件基本上遵循以下格式:

文件“
checkin\u if\u changed.bat
”的内容如下:

基本上,我们对文件的上一个版本执行cleartool差异。
如果
cleartool diff
返回0,则表示文件相同,因此我们执行
unco-rm

如果
cleartool diff
发现一个差异,它将返回一个1,表示文件不同,我们将其签入

或:

我使用了有点混乱的:

如果文件相同(并且签入失败),则取消选中该文件 退出。
如果不相同,则将其签入,然后使用unco命令 失败(因为它未签出)并出现错误(但会继续)

如果不想在服务器上看到,可以将所有输出转储到日志文件中 命令行。如果需要,您可以对其进行优化。
如果您有一个签入后触发器,强制您输入注释,那么 将
-nc
改为
-c“一些注释”


也许我可以换个说法。在checkin命令本身中,如果相同,我需要执行撤消签出。因为如果它是一个单独的命令,那么签入将已经失败,CI工具将认为它失败。我已经编辑了我的答案。
call checkin_if_changed.bat "dir1\sub\file.h"
cleartool diff -pre -dif %1
echo File: %1 diff result: %ERRORLEVEL%
goto diff%ERRORLEVEL%
:diff1
cleartool ci -c "Build box build." %1
goto end
:diff0
cleartool unco -rm %1
:end
cleartool lsco -cvi -avo -fmt "ci -nc '%n'\nunco -rm '%n'" | cleartool