2011-07-05 71 views
1

如何创建分支?
任何人都可以向我解释这些语法?如何创建分支

element * /main/LATEST -mkbranch karthik_4 

再假设,如果我的最新版本为6,但我想创建在4一个分支是如何做的?

回答

2

创建分支不能在一个选择规则中完成。
配置规范背后的想法是,ClearCase会尝试按顺序应用每个规则,直到一个适合(然后停止该元素,文件或目录,然后再次依次为下一个元素尝试相同的一组规则 - 文件或目录)。

所以下面有序选择规则的组合会:

  • 显示在他们的LATEST版本新的分支
  • 的所有元素,或者,如果没有新的分支又,将显示LATEST版本main,准备创建一个新的分支,如果结帐发生,
  • 或者,如果这是一个全新的元素(“添加到源代码管理”),将创建一个版本/main/0,然后immedi ately分公司为了在新的分支创建版本1:

(同样,这3条规则按顺序应用,在第一个适合,这就是为什么他们是有序的那样停止)

这将在下面的配置规范翻译:

element * .../karthik_4/LATEST 
element * /main/LATEST -mkbranch karthik_4 
element /main/0 -mkbranch karthik_4 

注:.../karthik_4 /最新语法有以不打领带karthik_4分支主:即使karthik_4是在上面创建的任何其他分支那main(这是什么.../意味着),它仍然会选择该新分支的最新版本(如果它存在,如果不存在,则ClearCase尝试下一个规则)

创建分支始终涉及3个规则,而不仅仅是一个。

现在,作为you saw earlier,这不会创建从特定版本(如'4')的分支。
它只会在主分支上的最新版本中创建一个分支:LATEST被称为移动标签:它会在每个新版本中自动移动。

你可以指定为一个文件,确切的版本,你要创建一个分支:

element * .../karthik_4/LATEST 
element /path/to/myFile /main/4 -mkbranch karthik_4 
element * /main/LATEST -mkbranch karthik_4 
element /main/0 -mkbranch karthik_4 

但是,这不会轻松地扩展,因为文件旁边myFile很可能有不同的历史和其版本4可能早在[email protected]@/main/4之前或之后创建(或者对于其他文件,版本4可能还不存在!)。