【问题标题】:Allow everyone to lock/unlock a ClearCase branch允许每个人锁定/解锁 ClearCase 分支
【发布时间】:2015-03-26 17:52:51
【问题描述】:

在这个question 中,我总结出使用ClearCase 的锁定/解锁机制来有效地使用Git。

不幸的是,我意识到只有分支所有者才能执行锁定/解锁操作

$ ct lock brtype:main-br-foo
cleartool: Error: No permission to perform operation "lock".
cleartool: Error: Must be one of: object owner, VOB owner, member of ClearCase group
cleartool: Error: Unable to lock branch type "main-br-foo".

是否有任何解决方案允许 VOB 的任何成员进行锁定/解锁?

【问题讨论】:

    标签: clearcase


    【解决方案1】:

    另一种方法是在结帐操作上使用操作前触发器,这将:

    • 如果在文件上设置了属性(名为“锁定”),则阻止签出(使用cleartool mkattr as in this question 设置)
    • 如果该属性不存在,则允许结帐继续。

    Removing an attribute 可以由与具有该属性的对象具有相同组成员的任何人完成,因此该模型比使用 cleartool lock 的模型受限制更少。

    您可以在签入时使用操作后触发器来完成它,如果在元素上找到属性“锁定”,它将自动删除。

    要将属性设置为您所做的分支:

    cleartool mkattype -nc islocked  # Should be done once
    
    cleartool mkattr islocked \"true\" brtype:branch_name
    

    【讨论】:

    • @coin 不,您不需要全部执行 mkattr:仅在您要锁定的那个上:将您的 cleartool 锁替换为仅在文件上执行 mkattr 的脚本锁定保留。
    • @coin Mastership 权限与锁定无关,与多站点多同步操作无关。
    • @coin 您也可以将解决方案应用于分支:您可以将属性添加到分支。甚至是一个vob。
    • @coin 语法似乎有点不对劲:brtype 应该在末尾,如ibm.com/developerworks/rational/archives/cciug/hypermail/0012/…:cleartool mkattr abc \"bar\" brtype:solution-abc
    • @coin 太好了,一旦它起作用,请不要犹豫添加触发器。
    猜你喜欢
    • 2022-10-21
    • 1970-01-01
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 2020-03-15
    • 2015-01-02
    • 2016-09-19
    • 2017-05-12
    相关资源
    最近更新 更多