Version control RationalClearCase中的配置规范

Version control RationalClearCase中的配置规范,version-control,clearcase,Version Control,Clearcase,我对这些clear case工具非常陌生。我在学习,因为我有一个项目要做。 我刚刚了解到默认的配置规范是 element *CHECKEDOUT element */main/LATEST 因此,新版本将在先前版本之后的main分支中创建。 但我一直在尝试这些,我只是把配置规范改成了这些 element *CHECKEDOUT element */main/2 在这些设置之后,当我单击文件时,它会显示“未找到文件””:我无法签入或签出。 然后我改为默认的配置规范,它又开始工作了 怎么了?

我对这些clear case工具非常陌生。我在学习,因为我有一个项目要做。 我刚刚了解到默认的配置规范是

element *CHECKEDOUT
element */main/LATEST 
因此,新版本将在先前版本之后的
main
分支中创建。
但我一直在尝试这些,我只是把配置规范改成了这些

element *CHECKEDOUT
element */main/2
在这些设置之后,当我单击文件时,它会显示“
未找到文件”
”:我无法签入或签出。
然后我改为默认的配置规范,它又开始工作了

怎么了?

另外,请告诉我,如果我的最新版本在
main
中为6,如何转到
version 4
在那里创建分支?

通过制定选择规则:

 element */main/2
您指示ClearCase仅显示。。。一切:

 /my/path/to/a/File
因此,如果“
aFile
”的任何父目录还没有“版本2”,您将无法访问
aFile

您应该始终在配置规范的末尾保留“
/main/LATEST
”选择规则,以便在前面的任何规则不起作用的情况下返回到该通用规则(通用,因为任何元素的
version 0
至少存储在“
main
”分支中,除非已重命名“
main
”,这是非常糟糕的)

例如:

 element * CHECKEDOUT
 element * /main/2
 element * /main/LATEST
将工作,并将向您显示所有内容的
版本2
(如果他们有),或最新版本(如果没有)

当您希望从某个点创建分支时,最好不要依赖版本号(因为您所称的“版本4”仅对您的文件有效,而对您的目录无效)。
不要忘记,文件和目录是以元素为基础进行版本控制的:您先对一个文件进行版本控制,然后对一个目录进行版本控制,然后对另一个文件进行版本控制…:它是以文件为中心的,不像其他VCS(SVN、Git、Mercurial等)那样以存储库为中心,具有一个原子提交和一个针对所有repo的修订号:这里您为每个元素提供了单独的版本号(文件或目录)。
有关详细信息,请参阅“”

最好先设置一个标签,以便从那里进行分支

但如果您没有标签,我的建议是:

  • 确定您的代码所在的时间点,以及您希望分支的状态
  • 制造
  • 用mkbranch指令完成该选择规则
  • 不要忘记要添加到该分支上的新文件(这是“
    /main/0
    ”规则)
因此:


将为最多在dd月yyy日期创建的任何元素创建一个新分支“
myBranch
”。

通过制定选择规则:

 element */main/2
您指示ClearCase仅显示……所有内容的“版本2”:

 /my/path/to/a/File
因此,如果“
aFile
”的任何父目录还没有“版本2”,您将无法访问
aFile

您应该始终在配置规范的末尾保留“
/main/LATEST
”选择规则,以便在前面的任何规则不起作用的情况下返回到该通用规则(通用,因为任何元素的
version 0
至少存储在“
main
”分支中,除非已重命名“
main
”,这是非常糟糕的)

例如:

 element * CHECKEDOUT
 element * /main/2
 element * /main/LATEST
将工作,并将向您显示所有内容的
版本2
(如果他们有),或最新版本(如果没有)

当您希望从某个点创建分支时,最好不要依赖版本号(因为您所称的“版本4”仅对您的文件有效,而对您的目录无效)。
不要忘记,文件和目录是以元素为基础进行版本控制的:您先对一个文件进行版本控制,然后对一个目录进行版本控制,然后对另一个文件进行版本控制…:它是以文件为中心的,不像其他VCS(SVN、Git、Mercurial等)那样以存储库为中心,具有一个原子提交和一个针对所有repo的修订号:这里您为每个元素提供了单独的版本号(文件或目录)。
有关详细信息,请参阅“”

最好先设置一个标签,以便从那里进行分支

但如果您没有标签,我的建议是:

  • 确定您的代码所在的时间点,以及您希望分支的状态
  • 制造
  • 用mkbranch指令完成该选择规则
  • 不要忘记要添加到该分支上的新文件(这是“
    /main/0
    ”规则)
因此:


将为最多在dd月yyy日期创建的任何元素创建一个新分支“
myBranch
”。

但我们大部分不记得时间和日期。我们只记得准确的版本。请给我一些链接或文档来研究这些工具。这真的是一件紧急和重要的事情我需要了解学习如何编写配置规范规则和语法code@cody:我的观点是:一个元素(一个文件)的版本没有用处。每个目录和文件都有自己的历史记录,有自己的版本树。要从一个文件进行分支,您需要知道其他元素(特别是父目录)的确切版本你想选择。而且它们的“版本号”并不总是相同的。请看@cody:See,但我们主要不记得时间和日期。我们只记得准确的版本。请给我一些链接或文档来研究这些工具。这真的是一件紧急和重要的事情我需要学习我需要了解和学习配置规范规则和语法如何编写code@cody:我的观点是:一个元素(一个文件)的版本没有用处。每个目录和文件都有自己的历史记录,有自己的版本树。要从一个文件进行分支,您需要知道其他元素(特别是父目录)的确切版本您要选择。并且它们并不总是具有相同的“版本号”。请参见@cody:See和