WHAT THE "DEATH SUPPORT" FEATURES DO: (this really should be in the main manual, but noone has gotten around to updating it). CVS with death support can record when a file is active, or alive, and when it is removed, or dead. With this facility you can record the history of a file, including the fact that at some point in its life the file was removed and then later added. First, the following now works as expected: touch foo cvs add foo ; cvs ci -m "added" foo rm foo cvs rm foo ; cvs ci -m "removed" foo touch foo cvs add foo ; cvs ci -m "resurrected" foo Second, files can now be added or removed in a branch and later merged into the trunk. 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 Added and removed files may also be merged between branches. Files removed in the trunk may be merged into branches. Files added on the trunk are a special case. They cannot be merged into a branch. Instead, simply branch the file by hand. I also extended the "cvs update -j" semantic slightly. Like before, if you use two -j options, the changes made between the first and the second will be merged into your working files. This has not changed. If you use only one -j option, it is used as the second -j option. The first is assumed to be the greatest common ancestor revision between the revision specified by the -j and the BASE revision of your working file.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.