我无法在此特定PC中签出文件,因为它与abt
cleartool error: type manager "text_file_delta" create_branch operation.
cleartool error: unable to create a branch request by -mkbranch option in config spec.
cleartool error: unable to check out
config_spec:
# ONLY EDIT THIS CONFIG SPEC IN THE INDICATED "CUSTOM" AREAS
#
# This config spec was automatically generated by the UCM stream
# "space_reload_CA" at 2013-09-06T16:13:58-04:00.
#
# Select checked out versions
element * CHECKEDOUT
element "[03d13482d8a611dc9c17000183b043eb=/space_tff]/.../..." -nocheckout
element "[03d13482d8a611dc9c17000183b043eb=/space_tff]/.../..." -nocheckout
element "[975cd291464411df86be0001843ab215=/space_tff/.../..." .../space_reload_CA/LATEST
element "[975cd291464411df86be0001843ab215=/space_tff/.../..."
-mkbranch space_reload_CA
element "[975cd291464411df86be0001843ab215=/space_tff/.../..." /main/0 -mkbranch space_reload_CA
end ucm
#UCMCustomElemBegin - DO NOT REMOVE - ADD CUSTOM ELEMENT RULES AFTER THIS LINE
#UCMCustomElemEnd - DO NOT REMOVE - END CUSTOM ELEMENT RULES
# Non-included component backstop rule: no checkouts
element * /main/0 -ucm -nocheckout
#UCMCustomLoadBegin - DO NOT REMOVE - ADD CUSTOM LOAD RULES
# Component selection rules...
这看起来像IBM文章"Element已经有一个类型的分支"
实际错误是:
%>cleartool co -nc a.txt
Created branch "branch" from "a.txt" version "main1".
cleartool: Error: Element already has a branch of type "branch" ("mainbranch").
cleartool: Error: Unable to create branch requested by -mkbranch option in config spec.
cleartool: Error: Unable to check out "a.txt".
原因可能是:
- 时间问题(下面的原因 1、2 和 4):OP user2370590 提到了一种可能的补救措施:
重新启动将解决此类问题
- 语法错误问题(下面的原因 3)
语法错误通常是原因,除了在您的原因中,这是一个 UCM 视图,这意味着它的配置规范是由 ClearCase 自动生成的。
可以肯定的是,键入:
cd /path/to/your/view
cleartool chstream -generate
cleartool setcs -stream
这将强制根据流的配置重新生成视图的配置规范。
然后重试结帐。
原因 3:
该错误是由于许多配置规范语法问题而发生的:
- 范围、模式或版本选择器的拼写不正确。
例如CHECKEDOUT
或LATEST
或标签名称或分支名称- 作用域、模式或版本选择器的顺序不正确。
例如,忘记包含引用-mkbranch
规则的LATEST
规则。- 元数据"类型"未创建,但在配置规范中引用。
例如,引用不存在的分支类型的-mkbranch
规则。- 在Unix/Linux系统中使用Windows样式斜杠("
"而不是"
/
")列出目录
(注意:在配置规范中,始终使用" /
":它更容易,并且可以在Windows和Unix上工作。
解决方案 3:修复语法
确保配置规范中的语法正确。
原因 1:时间同步问题
此错误是由视图服务器和 VOB 服务器时间不同步引起的。
如果 VOB 服务器上的时间(时钟)大于视图服务器,则会发生此错误,因为创建的版本带有时间戳,该时间戳被视图服务器视为将来,因此不会加载(仅限快照视图)。
解决方案 1:修复时间
更正视图和 VOB 服务器上的时间,使它们同步。
查看有关如何修改系统时间的操作系统说明。
原因 2 VMware 问题
在 VMware® 托管计算机上使用 ClearCase 时,可能会发生此错误。
错误的原因与 VMware 服务器上的时间设置有关。如果 VMware 服务器上的时间落后于 VOB 服务器上的时间,则会发生 mkbranch 错误。
解决方案 2:修复 VMware 时间
确保 VMware 服务器上的时间与 VOB 服务器同步。
以下命令是可以在 VMware 服务器上使用的一种方法,用于将时间与 VOB 服务器上的时间同步。
net time \vob_server_name /set
原因 4:副本迁移
在一个案例中,导出的VOB从一个主机转移到另一个主机。VOB 没有遵循《管理指南》中概述的移动过程,而是复制到新主机。
这使得VOB在两个地方活跃。一位开发人员在原始位置创建了分支类型。在新位置开始使用复制的 VOB 后,开发人员检测到副本不包含最新的mkbranch
操作。开发人员决定再次运行 mkbranch 操作。导入站点获取了包含第一个
mkbranch
事件的同步更新数据包并将其导入。然后,具有第二个
mkbranch
事件的数据包到达,但由于分支已经存在而无法导入;因此出现错误。
解决方案 4:修复副本
这是分歧,因为副本(发送站点和接收站点)在
mkbranch
事件的日期和时间上不一致。需要删除并重新创建其中一个副本。删除哪一个取决于副本系列的大小、正在使用的同步模式以及丢失该副本中数据的意愿。