下一个: , 上一个: Merging two revisions, 上层: Branching and merging


5.9 合并能添加或删除文件

如果你在合并时做的改变涉及到添加或删除一些文件,update -j 将反映这些变化。

例如:

     cvs update -A
     touch a b c
     cvs add a b c ; cvs ci -m "added" a b c
     cvs tag -b branchtag
     cvs update -r branchtag
     touch d ; cvs add d
     rm a ; cvs rm a
     cvs ci -m "added d, removed a"
     cvs update -A
     cvs update -jbranchtag

在执行这些命令且 `cvs commit'一wancheng 完成之后,文件 a 将被删除,而文件 d 将被加入到主分支。

注意,当用静态标签(`-j tagname')而不是动态标签(`-j branchname')从一个分支合并改变时,cvs 一般不会删除文件,因为 cvs 不会自动给 dead 版本添加静态标签。 除非静态标签是手工添加到 dead 版本上的。 使用分支标签从分支合并所有改变或使用两个静态标签作为合并端点合并都会在合并中将企图的修改传播开。