Annotation of 43BSD/contrib/rcs/doc/release3.ms, revision 1.1

1.1     ! root        1: .PP
        !             2: The major differences between release 2 and release 3 of RCS are:
        !             3: .IP ci: \w'rcsmerge'u+.2i
        !             4: Release 3 ci determines whether the file to be checked in is
        !             5: different from the previous revision. If it is not different, ci
        !             6: asks whether to do a checkin anyway, or, if -q is present, ci
        !             7: suppresses the checkin. This feature avoids redundant checkins. A
        !             8: checkin can be forced with the new option -f.
        !             9: .IP
        !            10: The option -l on release 3 ci now works properly: After the
        !            11: checkin, an implicit checkout with locking occurs. The keywords
        !            12: are updated. A new option, -u, also performs an implicit
        !            13: checkout, but does not lock.
        !            14: .IP
        !            15: The option -k looks through the working file to pick up keyword
        !            16: values for the revision number, date, author and state, and
        !            17: assigns them to the checked-in revision, rather then computing
        !            18: them from existing locks, the clock, etc. This is useful for
        !            19: software distribution: Suppose a file is maintained in RCS format
        !            20: at several sites. If an update is sent to these sites and checked
        !            21: in with the -k option, then the original revision number, date,
        !            22: author, and state are preserved.
        !            23: .IP co:
        !            24: Generates full path names for RCS files during the keyword
        !            25: expansion. (Determining the full path causes a noticeable
        !            26: slowdown of co; this can be mitigated by checking out several
        !            27: files in a single command.)
        !            28: .IP
        !            29: A new keyword, $Locker$, expands to the id of the user
        !            30: currently holding a lock on the revision.
        !            31: .IP rlog:
        !            32: The option -L omits all files that have no locks set. The option
        !            33: -R prints only the RCS file name. Try rlog -L -R or rlog -L -h.
        !            34: .IP rcsdiff:
        !            35: (New operation) Runs diff on a checked-out file and a revision in
        !            36: an RCS file. This is useful for figuring out what modifications
        !            37: were made since the last ci. Rcsdiff can also run diff on 2
        !            38: revisions in an RCS file.
        !            39: .IP rcsmerge: (New operation) Merges the changes between 2 revisions in
        !            40: an RCS file into the checked out revision.
        !            41: .IP merge:    3-way file merge. Merge now has an option to print the result to
        !            42: stdout (and a manual page).
        !            43: .IP File naming conventions:
        !            44: Release 3 RCS no longer removes suffixes of working files.
        !            45: In addition, the suffix for RCS files is now ",v" instead of
        !            46: ".v". Thus, a working file of the form "f.c" is stored into
        !            47: "f.c,v".
        !            48: .IP
        !            49: All you have to do is to rename your existing ".v"-files. Don't
        !            50: forget to add the suffix of the working file, if it was stripped
        !            51: off.
        !            52: .IP
        !            53: Note that this change restricts the length of working file names
        !            54: to 12 characters (RCS detects violations reliably). In 4.2bsd, this
        !            55: restriction will be removed. The ",v" was necessary to keep MAKE
        !            56: happy. A new version of MAKE that knows about RCS files in
        !            57: subdirectories /RCS will be released soon.
        !            58: .IP File modes:
        !            59: During the initial checkin, the RCS file inherits the read and
        !            60: execute permission from the working file. During subsequent
        !            61: checkouts, the working file inherits the read and execute
        !            62: permission from the RCS file. Thus, an executable file containing
        !            63: a shell program will still be executable after a ci-co cycle.
        !            64: .IP
        !            65: The working file is normally generated with write permission for
        !            66: the owner. An exception is if locking is set to strict, and
        !            67: checkout is without locking. Then the working file is generated
        !            68: without write permission, resulting in an error if one tries to
        !            69: edit it.
        !            70: .IP Portability:
        !            71: Release 3 is portable. I have tested it on a VAX-11/780 (Unix 4.1
        !            72: bsd), a PDP-11/70, and a PDP-11/45 (Unix 2.8 bsd), and it runs on
        !            73: these machines without change. Porting RCS to Berkeley Unix 4.2
        !            74: is trivial by changing one macro. I've also included the
        !            75: modifications that were necessary to run release 2 on the BBN-C70
        !            76: (BBN's C-machine), IBM 4341 with VM/UTS, M68000, Intel 86/330
        !            77: with Xenix-86, Onyx with V7 Unix, VAX/VMS/Eunice 2.2. However, it
        !            78: has not been tested on these systems. Currently. RCS is being
        !            79: ported to the DEC-20.
        !            80: .PP
        !            81: Numerous minor problems have been fixed. RCS now dies gracefully in case
        !            82: the file system fills up, or if there are other read/write errors.
        !            83: (Gracefully in this case means that RCS files are not mutilated.)
        !            84: RCS operations can no longer be interrupted during the renaming of RCS files
        !            85: (and thus will no longer through away RCS files if interrupted).
        !            86: There were some problems with nil-revision numbers and with printing of
        !            87: nil-strings; these have all been fixed. If stdin is not a terminal, ci and
        !            88: rcs now suppress the prompts for the log message and the descriptive text.
        !            89: Calls to getlogin() have been replaced with getpwuid(getuid()). The default
        !            90: for overwriting working files by co has been changed to not overwriting. Co
        !            91: does overwrite without asking if the file is read-only (generated by
        !            92: unlocking checkout, but with locking set to strict.) A serious, but
        !            93: extremely rare problem with the regeneration of older revision has been
        !            94: fixed. The comment-leader for .h-files is now initially set to " * ".
        !            95: .PP
        !            96: Lots of fixes were necessary to make RCS portable. These include
        !            97: sign-extension bugs, long identifiers, conflicting structure members, and
        !            98: expression overflows in older C-compilers. One person reported that %02d in
        !            99: printf doesn't work on his USG system; I now have a macro DATEFORM which
        !           100: either uses %02d or %.2d.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.