CVS 分支命令

  1. tag 创建分支
  2. rtag 创建分支

切出分支的副本

cvs checkout -r 分支名 module

将当前副本切到分支

cvs update -r 分支名 [module]

将另一分支的修改合并到副本

带两个 -j 的作用是仅将曾经合并过的分支的后续更改合并。

cvs update -j 分支名 module/file
cvs update -j xxx -j yyy module/file

tag 创建分支

创建分支, 当前目录必须有工作副本。

cvs tag [-bcdFflR] [-r rev|-D date] tag [files...]
-A Make alias of existing branch (requires -r).
-b Make the tag a "branch" tag, allowing concurrent development.
-c Check that working files are unmodified.
-d Delete the given tag.
-F Move tag if it already exists.
-B Allow move/delete of branch tag (not recommended).
-f Force a head revision match if tag/date not found.
-l Local directory only, not recursive.
-m message Specify message for logs.
-M Create floating branch.
-R Process directories recursively.
-r rev Existing revision/tag.
-D Existing date.

rtag 创建分支

创建一个模块的分支, 语法:

cvs rtag [-abdFflnR] [-r rev|-D date] tag modules...
-A Make alias of existing branch (requires -r).
-b Make the tag a "branch" tag, allowing concurrent development.
-d Delete the given tag.
-F Move tag if it already exists.
-B Allow move/delete of branch tag (not recommended).
-f Force a head revision match if tag/date not found.
-l Local directory only, not recursive.
-n No execution of 'tag program'.
-m message Specify message for logs.
-M Create floating branch.
-R Process directories recursively.
-r rev Existing revision/tag.基于指定的版本或标签创建
-D Existing date.基于指定的日期创建
-r rev 基于指定的标签创建分支,从老版本创建分支
-D date 基于指定日期创建分支
-b 表示创建分支,否则创建符号链接
tag 分支的名称
modules 模块的名称(目录名)

示例:

cvs rtag -b patches pjms