⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme

📁 早期freebsd实现
💻
📖 第 1 页 / 共 2 页
字号:
  Rlog now puts lockers and symbolic names on separate lines in the output  to avoid generating lines that are too long.  A similar fix has been made to lists in the RCS files themselves.  RCS no longer outputs the string `Locker: ' when expanding Header or Id  keywords.  This saves space and reverts back to version 3 behavior.  The default branch is not put into the RCS file unless it is nonempty.  Therefore, files generated by RCS version 5 can be read by RCS version 3  unless they use the default branch feature introduced in version 4.  This fixes a compatibility problem introduced by version 4.  RCS can now emulate older versions of RCS; see `co -V'.  This may be useful to overcome compatibility problems  due to the above changes.  Programs like Emacs can now interact with RCS commands via a pipe:  the new -I option causes ci, co, and rcs to run interactively,  even if standard input is not a terminal.  These commands now accept multiple inputs from stdin separated by `.' lines.  ci now silently ignores the -t option if the RCS file already exists.  This simplifies some shell scripts and improves security in setuid sites.  Descriptive text may be given directly in an argument of the form -t-string.  The character set for symbolic names has been upgraded  from Ascii to ISO 8859.  rcsdiff now passes through all options used by GNU diff;  this is a longer list than 4.3BSD diff.  merge's new -L option gives tags for merge's overlap report lines.  This ability used to be present in a different, undocumented form;  the new form is chosen for compatibility with GNU diff3's -L option.  rcsmerge and merge now have a -q option, just like their siblings do.  RCS now attempts to ignore parts of an RCS file that look like they come  from a future version of RCS.  When properly configured, RCS now strictly conforms with Posix 1003.1-1990.  RCS can still be compiled in non-Posix traditional Unix environments,  and can use common BSD and USG extensions to Posix.  RCS is a conforming Standard C program, and also compiles under traditional C.  Arbitrary limits on internal table sizes have been removed.  The only limit now is the amount of memory available via malloc().  File temporaries, lock files, signals, and system call return codes  are now handled more cleanly, portably, and quickly.  Some race conditions have been removed.  A new compile-time option RCSPREFIX lets administrators avoid absolute path  names for subsidiary programs, trading speed for flexibility.  The configuration procedure is now more automatic.  Snooping has been removed.Version 4 was the first version distributed by FSF.Beside bug fixes, features new to RCS version 4 include:  The notion of default branch has been added; see rcs -b.Version 3 was included in the 4.3BSD distribution.Further projects:  Add format options for finer control over the output of ident and rlog.  Be able to redo the most recent checkin with minor changes.  Add a `-' option to take the list of pathnames from standard input.  Perhaps the pathnames should be null-terminated, not newline-terminated,  so that pathnames that contain newlines are handled properly.  Add general options so that rcsdiff and rcsmerge can pass arbitrary options  to its subsidiary co and diff processes.  E.g.	-.OPTION to pass OPTION to the subsidiary `co'	-/OPTION to pass OPTION to the subsidiary `diff' (for rcsdiff only)  For example:	rcsdiff -.-d"1991/02/09 18:09" -.-sRel -/+unified -/-C -/5 -/-d foo.c  invokes `co -d"1991/02/09 18:09" -sRel ...' and `diff +unified -C 5 -d ...'.  To pass an option to just one subsidiary `co', put the -. option  after the corresponding -r option.  For example:	rcsmerge -r1.4 -.-ko -r1.8 -.-kkv foo.c  passes `-ko' to the first subsidiary `co', and `-kkv' to the second one.  Permit multiple option-pathname pairs, e.g. co -r1.4 a -r1.5 b.  Add ways to specify the earliest revision, the most recent revision,  the earliest or latest revision on a particular branch, and  the parent or child of some other revision.  If a user has multiple locks, perhaps ci should fall back on ci -k's  method to figure out which revision to use.  Symbolic names need not refer to existing branches and revisions.  rcs(1)'s BUGS section says this is a bug.  Is it?  If so, it should be fixed.  Write an rcsck program that repairs corrupted RCS files,  much as fsck repairs corrupted file systems.  Clean up the source code with a consistent indenting style.  Update the date parser to use the more modern getdate.y by Bellovin,  Salz, and Berets, or the even more modern getdate by Moraes.  None of  these getdate implementations are as robust as RCS's old warhorse in  avoiding problems like arithmetic overflow, so they'll have to be  fixed first.  Break up the code into a library so that it's easier to write new programs  that manipulate RCS files, and so that useless code is removed from the  existing programs.  For example, the rcs command contains unnecessary  keyword substitution baggage, and the merge command can be greatly pruned.  Make it easier to use your favorite text editor to edit log messages,  etc. instead of having to type them in irretrievably at the terminal.The following projects require a change to RCS file format,and thus must wait until at least RCS version 6.  Be able to store RCS files in compressed format.  Don't bother to use a .Z extension that would exceed file name length limits;  just look at the magic number.  Add locker commentary, e.g. `co -l -m"checkout to fix merge bug" foo'  to tell others why you checked out `foo'.  Also record the time when the revision was locked,  and perhaps the working pathname (if applicable).  Let the user mark an RCS revision as deleted; checking out such a revision  would result in no working file.  Similarly, using `co -d' with a date either  before the initial revision or after the file was marked deleted should  remove the working file.  For extra credit, extend the notion of `deleted' to  include `renamed'.  RCS should support arbitrary combinations of renaming and  deletion, e.g. renaming A to B and B to A, checking in new revisions to both  files, and then renaming them back.  Use a better scheme for locking revisions; the current scheme requires  changing the RCS file just to lock or unlock a revision.  The new scheme should coexist as well as possible with older versions of RCS,  and should avoid the rare NFS bugs mentioned in rcsedit.c.  Add rcs options for changing keyword names, e.g. XConsortium instead of Id.  Add frozen branches a la SCCS.  In general, be able to emulate all of  SCCS, so that an SCCS-to-RCS program can be practical.  Add support for distributed RCS, where widely separated  users cannot easily access each others' RCS files,  and must periodically distribute and reconcile new revisions.  Be able to create empty branches.  Improve RCS's method for storing binary files.  Although it is more efficient than SCCS's,  the diff algorithm is still line oriented,  and often generates long output for minor changes to an executable file.  Add a new `-kb' expansion for binary files on non-Posix hosts  that distinguish between text and binary I/O.  The current `text_work_stdio' compile-time switch is too inflexible.  This fix either requires nonstandard primitives like DOS's setmode(),  or requires that `-kb' be specified on initial checkin and never changed.  From the user's point of view, it would be best if  RCS detected and handled binary files without human intervention,  switching expansion methods as needed from revision to revision.  Extend the grammar of RCS files so that keywords need not be in a fixed order.  Internationalize messages; unfortunately, there's no common standard yet.  This requires a change in RCS file format because of the  `empty log message' and `checked in with -k' hacks inside RCS files.Credits:  RCS was designed and built by Walter F. Tichy of Purdue University.  RCS version 3 was released in 1983.  Adam Hammer, Thomas Narten, and Dan Trinkle of Purdue supported RCS through  version 4.3, released in 1990.  Guy Harris of Sun contributed many porting  fixes.  Paul Eggert of System Development Corporation contributed bug fixes  and tuneups.  Jay Lepreau contributed 4.3BSD support.  Paul Eggert of Twin Sun wrote the changes for RCS version 5, released in 1991.  Rich Braun of Kronos and Andy Glew of Intel contributed ideas for new options.  Bill Hahn of Stratus contributed ideas for setuid support.  Ideas for piece tables came from Joe Berkovitz of Stratus and Walter F. Tichy.  Matt Cross of Stratus contributed test case ideas.  Adam Hammer of Purdue QAed.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -