点击某个VCS定义页面里面的New Module(新建模块)图标。 如果定义了多个VCS模块,那么Luntbuild会按序依次检出这些模块。 如果后面模块目标路径和前一个模块有部分重叠,那么这部分重叠的路径将会被后一个模块覆盖。 例如:假设您定义了一个模块,其目标路径为"/foo/bar", 然后又定义了第二个模块,其目标路径为"/foo", 那么从第二个模块检出的内容将完全覆盖第一个模块。 反过来,如果第一个模块的目标路径为"/foo", 第二个模块的目标路径为"/foo/bar",那么第一个模块检出的"/foo/bar"下的内容会被第二个模块覆盖, 而在检出代码中的其他路径比如/foo/another_bar,将不会被覆盖。
标签在AccuRev里面是用于同步的事务编号。在此指定您希望基于哪个事务编号进行构建。
用于检出代码 Accurev储存位置。
构建模块的回溯流的名字。 The backing stream should be able to have streams created from it by the build user.
指定同回溯流关联的构建流名称 (如果该构建流 存在,它将被自动创建)。 基于这个流,一个相关的引用树将会被创建(树的名称为流的名称加上"_reference"后缀)。
指定从CVS代码库中获取代码的路径,例如:testcvs/src
指定前面的源路径的分支。该选项是可选的。如果没有设置相应的值,那么将把主分支作为默认值。
指定前面的源路径的标签。该选项也是可选的。 如果指定了该值,那么该值将优先于分支的值。如果没有设置相应的值,就会检出上述指定分支里面的最新代码。
"Source path"(源路径)代表了CVS代码库中模块的意思,例如"/testcvs", "/testcvs/web",或者"testcvs"。 但是不能用"/"或者"\"这两个字符来定义源路径。 "Branch"(分支)就是CVS分支(branch),而"Label"(标签)就是CVS的标签(tag)。 对于某个模块,这二个属性(branch和label)中只有一个的值有效。 如果都不为空,那么标签将优于分支。 如果都为空,Luntbuild则从主分支获取最新的代码。
指定Perforce存储位置的路径,例如"//depot/testperforce/...".
指定前面的存储位置路径上的标签。该属性是可选的。 如果为空,那么将会检出该存储路径上最新的版本。
指定客户端的路径,例如"//myclient/testperforce/...".
Depot path: -//depot.side
Client path: //client.side
Perforce的模块定义把代码库的Depot路径("Depot path")映射到客户端路径("Client path")。 Luntbuild也支持Perfoce的标签属性。 Depot路径("Depot path")表示Perforce代码库中的路径,例如 "//depot/testperforce/..." 客户端路径("Client path")表示客户端的路径(也就是Depot路径下的内容检出之后保存在客户端的什么目录下), 例如"//myclient/testperforce/..." "Label"是Perfoce标签,如果您想获取指定的Depot路径下的内容的某个时刻的快照,那么就需要使用标签。 如果标签为空,那么获得的Depot路径下的内容为head版本。 客户端路径对应的目录不一定要存在。 如果不存在那么Luntbuild会自动创建相应的目录。 在Perfoce的连接信息中指定的用户应该有足够的权限来创建或者修改Perforce的参数。
即Subversion代码库中的路径,例如"testsvn", "testsvn/web", 或者 "/testsvn"。 当"branch"(分支) 或者 "label"(标签)属性指定的时候,本路径会映射到svn代码库的另一个路径。
指定以上源路径的分支。该属性为可选项,如果不设置,那么将使用默认值trunk。
指定以上源路径的标签。该属性为可选的。如果设置了该属性,其优先级高于分支。如果不设置,就采用指定分支的head version。
该属性为可选的。目标路径相对于项目的工作目录,如果设置了相应的值,那么从subversion代码库中获取的代码将保存在该目录下。 否则将会在项目的工作目录下创建一个以源路径命名的目录,从subversion获取的代码将保存在该目录下。
"Source path"(源路径)即Subversion代码库中的路径,例如"testsvn", "testsvn/web", 或者 "/testsvn"。 Luntbuild在其他的属性值基础上将该路径映射到Svn代码库中的路径。 我们定义了以下属性来描述这种映射方式:
| Repository url base: svn://localhost |
| Directory for trunk: trunk |
| Directory for branches: branches |
| Directory for tags: tags |
可以试验一下下面的模块设置和路径映射:
Luntbuild从ulr"svn://localhost/trunk/testsvn/web"下检出代码, 并保存在"<project work directory>/testsvn/web"下面。
Luntbuild从ulr "svn://localhost/branches/simplified-chinese/testsvn/web"下检出代码, 并保存在"<project work directory>/testsvn/web"下面。
Luntbuild从ulr "svn://localhost/tags/v1_0/testsvn/web"下检出代码, 并保存在"<project work directory>/testsvn/web"下面。
Luntbuild从ulr "svn://localhost/tags/v1_0/testsvn/web" 下检出代码, 并保存在"<project work directory>/testsvn/web/simplified-chinese"下面。
当Luntbuild给检出到目录"<project work directory>/testsvn/web"下的代码打上标签,例如是"v1_0", 会执行下面的代码:"svn copy <project work directory>/testsvn/web svn://localhost/tags/v1_0/testsvn/web"
如果将"Directory for trunk","Branch"和"Label"三个属性都设置为空值,就可以避免上面的url映射。 通过这种方式,只设置"Source path" 和 "Destination path"属性,您就可以控制从什么地方检出代码,并将检出的代码保存在什么地方。 这种情况下,源路径只会把"repository url base"属性的值作为前缀。
在此指定在VSS代码库中的路径,例如"testvss", 或者"/testvss".
在此指定上面设置的源路径上的标签,该属性为可选的,如果为空,就使用最新的版本。
指定相对于项目工作目录的目标目录,从源目录下获取的代码就保存在这个目录下。 该属性为可选的,如果该属性为空,Luntbuild会在项目工作目录下建一个和源目录的目录结构一致的目录, 并将检出的代码保存在这个目录下。
源路径其实就是相对于VSS代码库根目录的的项目路径,例如"testvss", "/testvss", 或者 "/testvss/web"等等。 使用"/" 或者 "\",都可以获取整个代码库的内容。 标签指VSS标签。VSS通过创建一个新的共享的项目来实现分支功能。 因此您需要配置不同的模块,这样才能从不同的分支获取代码。 如果某个模块的标签为空,Luntbuild则从VSS获取该模块的最新代码。 如果定义目标路径属性,那么从VSS获取的代码将会保存在相对于项目工作目录的目标目录下。 否则会保存在相对于项目工作目录并且和源目录的目录结构一样的目录下。
在此指定StarTeam视图。该属性为可选属性。如果为空,Luntbuild使用当前的StarTeam项目的根view。
在此指定相对于StarTeam视图的路径。"/"代表根路径。
指定以上StarTeam视图的标签。该属性为可选属性。如果为空,就以指定视图上的最新代码为准。
指定相对于项目工作目录的目标目录,从源目录下获取的代码就保存在这个目录下。 该属性为可选的,如果该属性为空,Luntbuild会在项目工作目录下建一个和源目录的目录结构一致的目录, 并将检出的代码保存在这个目录下。
"StarTeam view"指StarTeam的视图,"Label"指StarTeam视图的标签。 如果"StarTeam view"为空,Luntbuild就使用StarTeam的根视图。 "Source path"是相对指定的StarTeam视图根目录的路径。 如果定义了"Destination path"性,那么从StarTeam代码库获取的代码将会保存在相对于项目工作目录的目标目录下。 否则会保存在相对于项目工作目录并且和源目录的目录结构一样的目录下。