Removing files
**************
//z 2012-07-06 10:10:14 AM IS2120@CSDN.T706816498 [T12,L149,R5,V166]
Modules change. New files are added, and old files disappear.
Still, you want to be able to retrieve an exact copy of old releases.
Here is what you can do to remove a file, but remain able to
retrieve old revisions:
* Make sure that you have not made any uncommitted modifications to
the file. See Viewing differences, for one way to do that.
You can also use the `status' or `update' command. If you remove
the file without committing your changes, you will of course not
be able to retrieve the file as it was immediately before you
deleted it.
* Remove the file from your working copy of the directory. You can
for instance use `rm'.
* Use `cvs remove FILENAME' to tell CVS that you really want to
delete the file.
* Use `cvs commit FILENAME' to actually perform the removal of the
file from the repository.
//z 2012-07-06 10:10:14 AM IS2120@CSDN.T706816498 [T12,L149,R5,V166]
When you commit the removal of the file, CVS records the fact that
the file no longer exists. It is possible for a file to exist on only
some branches and not on others, or to re-add another file with the same
name later. CVS will correctly create or not create the file, based on
the `-r' and `-D' options specified to `checkout' or `update'.
- Command: cvs remove [OPTIONS] FILES ...
Schedule file(s) to be removed from the repository (files which
have not already been removed from the working directory are not
processed). This command does not actually remove the file from
the repository until you commit the removal. For a full list of
options, see See Invoking CVS.
Here is an example of removing several files:
$ cd test
$ rm *.c
$ cvs remove
cvs remove: Removing .
cvs remove: scheduling a.c for removal
cvs remove: scheduling b.c for removal
cvs remove: use 'cvs commit' to remove these files permanently
$ cvs ci -m "Removed unneeded files"
cvs commit: Examining .
cvs commit: Committing .
As a convenience you can remove the file and `cvs remove' it in one
step, by specifying the `-f' option. For example, the above example
could also be done like this:
$ cd test
$ cvs remove -f *.c
cvs remove: scheduling a.c for removal
cvs remove: scheduling b.c for removal
cvs remove: use 'cvs commit' to remove these files permanently
$ cvs ci -m "Removed unneeded files"
cvs commit: Examining .
cvs commit: Committing .
If you execute `remove' for a file, and then change your mind before
you commit, you can undo the `remove' with an `add' command.
$ ls
CVS ja.h oj.c
$ rm oj.c
$ cvs remove oj.c
cvs remove: scheduling oj.c for removal
cvs remove: use 'cvs commit' to remove this file permanently
$ cvs add oj.c
U oj.c
cvs add: oj.c, version 1.1.1.1, resurrected
If you realize your mistake before you run the `remove' command you
can use `update' to resurrect the file:
$ rm oj.c
$ cvs update oj.c
cvs update: warning: oj.c was lost
U oj.c
When you remove a file it is removed only on the branch which you
are working on (see Revisions and branches.). You can later merge
the removals to another branch if you want (*note Merging adds and
removals::.).
//z 2012-07-06 10:10:14 AM IS2120@CSDN.T706816498 [T12,L149,R5,V166]
Removing files**************//z 2012-07-06 10:10:14 AM IS2120@CSDN.T706816498 [T12,L149,R5,V166] Modules change. New files are added, and old files disappear.Still, you want to be able to retri