基线创建中断

时间:2012-07-09 13:00:10

标签: clearcase clearcase-ucm

我今天试图创建一个基线并且ClearCase Explorer崩溃了(似乎是在它完成之后,但显然它不是。)

我试图重新创建基线,它给我一个错误,说有一些是“in_progress”所以它无法继续。

我删除了基线,我正在尝试删除“in_progress”标签类型。 当我删除lbtype时,它表示目录已被锁定。

我做了一个lslock -all并删除了项目和基线上的锁定,现在当我执行lslock -all时没有列出任何内容。

我试图删除“in_progress”lbtype,它仍然说某些东西被锁定了。有没有其他方法可以找出阻止它工作的原因?

我知道这可能令人困惑,所以如果需要澄清,我愿意更新我的问题。

  

“ct lslock -all”

     

- 09-09T09:47 USER锁定项目“XXXXXXX”(已锁定)
  “已锁定所有用户。项目因未发布的更改而被锁定。”

     

- 09-20T09:56 USER锁定基线“XXXXXXXXX”(已锁定)
  “锁定所有用户。”

(删除锁)

“ct lslock -all”没有显示任何内容

  

“rmtype -rmall lbtype:BASELINE_in_progress @ \ VOB

     

有1228种类型为“BASELINE_in_progress”的标签。

     

删除标签? [不]是的

     

cleartool:错误:目录元素上的锁定(过时)阻止   操作“删除标签”。

     

cleartool:错误:无法删除标签类型“BASELINE_in_progress”。

1 个答案:

答案 0 :(得分:2)

实际的错误消息是

possible stranded temporary lbtype name found: "`abaselinexxx.yyyy_in_progress`".

这个想法是:

  • 删除UCM组件所涉及的vob中的所有_inprogress类型
$ ct rmtype -rmall lbtype:abaselinexxx.yyyy_in_progress@\\avob
There are 1690 labels of type "abaselinexxx.yyyy_in_progress".
Remove labels?  [no] yes
  • 将基线提升为完全标记的基线:
ct chbl -full -nc baseline:abaselinexxx.yyyy@\apvob

可能阻止这些操作完成的锁是:

  • on lbtype
  • 在vob上(即vob本身可能被锁定)
  • 在pvob上(pvob或其中一个管理员pvob可能被锁定)

评论中的几点评论:

  • cleartool lslock -all不会显示过时的文件(“过时”是一种锁定形式):cleartool lslock -all -obsolete会。

  • 要解锁一组锁定的文件,您可以选择forcleartool find -exec命令。

  

for /f "delims==" %x in ('cleartool lslock -all -obsolete -fmt "%Xn\n"') do cleartool unlock "%x"

Unix,在视图上下文中......

cleartool lslock -all -obsolete -fmt "%Xn\n" | xargs -i{}
cleartool unlock %x

请注意,cleartool find会在特定路径下解锁所有 如果您知道该路径(以及所有 - 或者最重要的 - 其内容)被锁定,那么它可以工作:

ct find /path/to/a/locked/directory -exec '/usr/atria/bin/cleartool unlock  "$CLEARCASE_PN"'