我正在开展一个项目,负责2个子组件。该项目有许多开发人员,整个结构由目录层次结构组织,其中根包含系统的所有其余部分。我们使用CVS。
由于我的工作只关注两个目录,我只需要使用CURRENT标记更新所有其他目录。有一个人为整个项目发布CURRENT标签。理想情况下,我的两个子组件应尽可能经常标记,这样一次结账/更新将使包括我的两个目录在内的整个系统保持最新状态。不幸的是,事实并非如此。
但我需要系统的其余部分是最新的。我不能只发出
因为这可能会妥协,所以在根目录上'pvs upd -r SORT_OF_CURRENT_TAG' 如果SORT_OF_CURRENT_TAG落后,我的部分代码。在CVS中是否有办法可以对系统的某些部分进行更新并保留其余部分(我的部分)完好无损?
由于
赵斌
答案 0 :(得分:0)
我想最简单的方法是简单地更新所有内容(请注意,不会破坏您库中任何未经修改的更改)。在根目录中执行:
cvs up -r CURRENT_TAG
然后将两个目录更新为您想要的版本或HEAD,例如:
cvs up -r rel-2-0 whole_project/lib/mylibrary1
cvs up -A whole_project/lib/mylibrary2
更优雅的解决方案是为要更新的项目部分定义别名。为此,您需要在CVSROOT / modules文件中创建一个条目,例如:
my_alias -a !whole_project/lib/mylibrary1 !whole_project/lib/mylibrary1 whole_project
现在您只需从根目录更新如下:
cvs up -r CURRENT_TAG my_alias