rcs2atfs(1) | ShapeTools | rcs2atfs(1) |
rcs2atfs - convert RCS archives to AtFS format
rcs2atfs [-o outputfile] [ -q]
archive ...
rcs2atfs [-o outputfile] [ -q] -R
directory ...
Rcs2atfs converts version histories from RCS archives to ShapeTools' AtFS format. It uses rlog(1) to get information about an RCS archive and issues shell commands (usually through a pipe directly to /bin/sh) to check out the RCS revisions and check the files in as AtFS versions, trying to keep as many attributes as possible.
The RCS archives are left unchanged.
It is recommended to create a special directory with the name RCS for the RCS archives, but AtFS histories are always kept in a special directory AtFS.
Rcs2atfs treats its arguments as names of RCS archives. These can be the names of the archive files themselves, ending with ,v, or the names of the files stored in the archives.
If the -R option is given, the arguments are interpreted as directory names. Rcs2atfs recursively descends each directory tree (symbolic links are followed) and converts the RCS archives it finds. The correspondig AtFS archives are created where the RCS archives are found.
Rcs2atfs tries to keep the revision numbers of the RCS history also as AtFS version numbers. This is impossible if an RCS history contains branches. In this case the revisions are saved as AtFS versions in the order of their check-in date. In either case the RCS revision number is kept as a symbolic name for the corresponding AtFS version, e.g. the AtFS version of RCS revision 1.2 will have the symbolic name ``r1.2''.
The command
traverses the directory tree $HOME/development and converts every RCS archive in it into an AtFS archive. During the conversion, the name of every RCS archive and every revision number is echoed on standard output.
Each archive in the RCS directory is converted to an AtFS history. The names and revision numbers of the converted archives are not echoed.
sh(1), rcsintro(1), rcs(1), rlog(1), co(1), vcintro(1), save(1), vadm(1), utime(1)
colon after symbolic name missing, file skipped
revision not found, file skipped
date not found, file skipped
author not found, file skipped
status not found, file skipped
rlog information missing, file skipped
Oops? Unknown reader state in readin_rcsfile!
revision numbers corrupted
number of revisions is wrong!
If rcs2atfs visits the same RCS archive twice (e.g. because a symbolic link is followed to a directory which is also accessed directly), the check for existing AtFS archives may be done a second time before the conversion commands from the first visit are executed by the shell. This results in lots of annoying messages and duplicate AtFS versions of RCS revisions. To avoid this, make sure that rcs2atfs doesn't reach a directory twice.
Rcs2atfs is rather slow since it invokes a shell command for every action.
Attribute citations in files are not translated from RCS to AtFS (e.g. ``$Header: ... $'' to ``$__Header$'').
Rcs2atfs strongly relies on the format of rlog's output. Since I don't know any other rlog than our version (5.5), it may fail to work with other versions.
Due to the lack of serious RCS archives, rcs2atfs isn't thoroughly tested yet. (Well, we use ShapeTools. :-)
Juergen.Nickelsen@cs.tu-berlin.de
Tue Jun 29 16:38:28 1993 | rcs2atfs-1.9 |