我正在尝试编写一个仅在某些文件类型上分支的configspec(I.E.文档可能很痛苦,所以我们希望避免这些)。
现在我有以下扩展名: * .txt和* .pl(例如)
我试过了:
element * CHECKEDOUT
element -directory * \main\LATEST
element '{*.txt||*.pl}' \main\BLARG\LATEST
element '{*.txt||*.pl}' \main\LATEST -mkbranch BLARG
使用括号和其他一些变体。
我只是感到困惑,我确实发现在某些情况下你可以使用类似于c ++的比较运算符但是无法使它工作。
我应该可以使用:query&&查询
是否可以通过使用configspec仅允许在特定文件类型上进行分支,如果是这样,是否有任何提示/提示/某些内容可以让我朝着正确的方向前进?
编辑: 从我发送的链接(无论如何在该网站上的一个页面)中读取,您可以使用某些内容进行设置
element * CHECKEDOUT
element -directory * \main\LATEST
element *.[hc] \main\BLARG\LATEST
element *.[hc] \main\LATEST -mkbranch BLARG
这应匹配您正在查看的任何h和c文件,并允许根据这些文件进行分支。
element * CHECKEDOUT
element -directory * \main\LATEST
element *.txt \main\BLARG\LATEST
element *.txt \main\LATEST -mkbranch BLARG
这将起作用,只匹配.txt文件,这很棒,我只是希望它能匹配额外的设置,也许我可以添加一两个额外的一行,也许这将完成我正在尝试做的事情
element * CHECKEDOUT
element -directory * \main\LATEST
element *.txt \main\BLARG\LATEST
element *.pl \main\BLARG\LATEST
element *.txt \main\LATEST -mkbranch BLARG
element *.pl \main\LATEST -mkbranch BLARG
由于各种原因,我们的团队只对某些文件集进行分支,其中一个原因是在某些情况下很难合并(注意.doc文件)。我打算编写一个configspec,它会自动将我们的团队指定为“branchable”,但其他只是checkout main。
我希望我的问题更清楚,我认为这不是你在初步回答VonC(我想)中所说的,如果你的回答仍然存在,请告诉我。
答案 0 :(得分:1)
不,似乎不太可能(除非您列出要分支的每种类型),并且有理由。
分支背后的想法是隔离一组文件的历史记录(不是针对所述组的某些特定部分)
UCM及其UCM组件概念(一组连贯的文件,分支为全部,标记为全部单元)加强了这一想法。
请参阅文章“Best practices for using composite baselines in UCM”中有关“组件”的更多信息。
因此,努力弯曲工具以实现一个选择性版本控制组织可能不是正确的做法。
在他们自己的“组件”中隔离这些文件,然后通过符号链接将它们用回原始树结构是一种可能的解决方案(可能还有其他)至少更好(这让人联想到子模块的概念)或其他(D)VCS使用的子林
另外,如果您因为合并“难以”而分支:
ms_word
类型管理器合并
请参阅“About merging Microsoft Office files in ClearCase”.ppt
之类的二进制工件阻止,请为该类型激活复制合并策略,如“Clearcase UCM is trying to merge pdf files”中所示。
我意识到你出于其他可能有效的原因而分支,但同样,我喜欢我的分支政策简单,可管理和可扩展。