\input texinfo @c -*-texinfo-*-
-@c "@(#)$Name: $:$Id: pcl-cvs.texi,v 1.20 2003/08/14 04:53:30 kfogel Exp $"
@c %**start of header
@setfilename ../info/pcl-cvs
@settitle PCL-CVS --- Emacs Front-End to CVS
@copying
Copyright @copyright{} 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-1999, 2000, 2002 Free Software Foundation, Inc.
+1999, 2000, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.1 or
+under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``The GNU Manifesto'', ``Distribution'' and
``GNU GENERAL PUBLIC LICENSE'', with the Front-Cover texts being ``A GNU
@end ifnottex
@menu
-* About PCL-CVS:: Installation, credits, history, @dots{}
+* About PCL-CVS:: Credits, history, @dots{}
* Getting started:: An introduction with a walk-through example.
* Buffer contents:: An explanation of the buffer contents.
About PCL-CVS
* Contributors:: Contributors to PCL-CVS.
-* Installation::
Commands
Stefan Monnier picked up development again, adding some major new
functionality and taking over the maintenance.
-As of Emacs 21, PCL-CVS is part of the standard Emacs distribution.
-
@menu
* Contributors:: Contributors to PCL-CVS.
-* Installation::
@end menu
-@node Contributors, Installation, About PCL-CVS, About PCL-CVS
+@node Contributors,, About PCL-CVS, About PCL-CVS
@section Contributors to PCL-CVS
@cindex Contributors
@cindex Authors
there would be no new releases of PCL-CVS.
-@node Installation, , Contributors, About PCL-CVS
-@section Installation
-@cindex Installation
-
-As mentioned above, PCL-CVS comes bundled with Emacs version 21.1 and
-later. If you're using Emacs 20, you can download an older version of
-PCL-CVS from @uref{ftp://flint.cs.yale.edu/pub/monnier/pcl-cvs}. That
-version also works on XEmacs.
-
-If you are running XEmacs 21.0 or later, PCL-CVS is available in
-pre-compiled package form. Please refer to the XEmacs manual for
-instructions regarding package selection and installation. Currently,
-that PCL-CVS package also requires you to have installed the
-@file{xemacs-base}, @file{elib}, and @file{dired} packages.
-
-If you have @TeX{} installed at your site, you can make a typeset manual
-from @file{pcl-cvs.texi}.
-
-@enumerate
-@item
-If PCL-CVS came with the Emacs distribution, type @kbd{make pcl-cvs.dvi}
-in the @file{man} subdirectory of the Emacs source tree.
-@item
-Alternatively, run @TeX{} by typing @kbd{texi2dvi pcl-cvs.texi}.
-@item
-Convert the resulting device independent file @file{pcl-cvs.dvi} to a
-form which your printer can output and print it. If you have a
-PostScript printer, there is a program, @code{dvi2ps}, which does. There
-is also a program which comes together with @TeX{}, @code{dvips}, which
-you can use.
-@end enumerate
-
-
@node Getting started, Buffer contents, About PCL-CVS, Top
@chapter Getting started
@cindex Introduction
Many of the commands work on the current set of @dfn{selected} files
which can be either the set of marked files (if any file is marked and
-marks are no ignored) or whichever file or directory the cursor is on.
+marks are not ignored) or whichever file or directory the cursor is on.
If a directory is selected but the command cannot be applied to a
directory, then it will be applied to the set of files under this
@table @kbd
@item m
This marks the file that the cursor is positioned on. If the cursor is
-positioned on a directory all files in that directory are marked.
+positioned on a directory all files in that directory are marked
(@code{cvs-mode-mark}).@refill
@item u
Unmark the file that the cursor is positioned on. If the cursor is on a
-directory, all files in that directory are unmarked.
+directory, all files in that directory are unmarked
(@code{cvs-mode-unmark}).@refill
@item M
@item S
Mark all files in a particular state, such as ``Modified'' or
-``Removed''. (@code{cvs-mode-mark-on-state}).
+``Removed'' (@code{cvs-mode-mark-on-state}).
@item T
Toggle use of marks for the next command (@code{cvs-mode-toggle-marks}).
@samp{revert-buffer} will be performed. (If the file contains
@samp{$@asis{Id}$} keywords, @samp{cvs commit} will write a new file with
the new values substituted. The auto-revert makes sure that you get
-them into your buffer). The revert will not occur if you have modified
+them into your buffer.) The revert will not occur if you have modified
your buffer, or if @samp{cvs-auto-revert} is set to
@samp{nil}.
Invoke @samp{add-change-log-entry-other-window} to edit a
@file{ChangeLog} file. The @file{ChangeLog} file will be found in the
directory of the file the cursor points to, or in a parent of that
-directory. (@code{cvs-mode-add-change-log-entry-other-window}).@refill
+directory (@code{cvs-mode-add-change-log-entry-other-window}).@refill
@end table
If you have modified a file, and for some reason decide that you don't
want to keep the changes, you can undo them with this command. It works
by removing your working copy of the file and then getting the latest
-version from the repository (@code{cvs-mode-undo-local-changes}.
+version from the repository (@code{cvs-mode-undo-local-changes}).
@end table
@kindex =@r{--run @samp{cvs diff}}
@kindex db@r{--diff against base version}
@kindex dh@r{--diff against head of repository}
+@kindex dr@r{--diff between base and head of repository}
@kindex dv@r{--diff against vendor branch}
+@kindex dy@r{--diff against yesterday's head}
@findex cvs-mode-diff
@findex cvs-mode-diff-backup
@findex cvs-mode-diff-head
+@findex cvs-mode-diff-repository
@findex cvs-mode-diff-vendor
+@findex cvs-mode-diff-yesterday
@vindex cvs-invert-ignore-marks@r{ (variable)}
@table @kbd
@item =
@itemx d =
Display a @samp{cvs diff} between the selected files and the version
-that they are based on. (@code{cvs-mode-diff}).@refill
+that they are based on (@code{cvs-mode-diff}).@refill
@item d b
If CVS finds a conflict while merging two versions of a file (during a
@item d h
Display a @samp{cvs diff} between the selected files and the head
-revision in the repository (the most recent version on the current
-branch) (@code{cvs-mode-diff-head}).@refill
+revision (the most recent version on the current
+branch) in the repository (@code{cvs-mode-diff-head}).@refill
+
+@item d r
+Display a @samp{cvs diff} between the base revision of the selected
+files and the head revision in the repository. This displays the
+changes anyone has committed to the repository since you last executed
+a checkout, update or commit operation
+(@code{cvs-mode-diff-repository}).
@item d v
Display a @samp{cvs diff} between the selected files and the head
-revision of the vendor branch in the repository.
+revision of the vendor branch in the repository
(@code{cvs-mode-diff-vendor}).@refill
+
+@item d y
+Display a @samp{cvs diff} between the selected files and yesterday's
+head revision in the repository
+(@code{cvs-mode-diff-yesterday}).@refill
@end table
By default, @samp{diff} commands ignore the marks. This can be changed
This command use @code{ediff} (or @code{emerge}, see above) to allow you
to do an interactive 3-way merge.
-@strong{Note:} When the file status is @samp{Conflict},
+@strong{Please note:} when the file status is @samp{Conflict},
CVS has already performed a merge. The resulting file is not used in
any way if you use this command. If you use the @kbd{q} command inside
@samp{ediff} (to successfully terminate a merge) the file that CVS
@table @kbd
@item O
Update all selected files with status @samp{Need-update} by running
-@samp{cvs update} on them. (@code{cvs-mode-update}).
+@samp{cvs update} on them (@code{cvs-mode-update}).
@end table
@cindex @samp{CVSROOT}, overriding
If you have an idea about any customization that would be handy but
-isn't present in this list, please tell me!
-For info on how to reach me, see @ref{Bugs}.@refill
+isn't present in this list, please tell us!
+For info on how to reach us, see @ref{Bugs}.@refill
@table @samp
@item cvs-auto-remove-handled
@node Customizing Faces, , Customization, Customization
@section Customizing Faces
-@vindex cvs-header-face (face)
-@vindex cvs-filename-face (face)
-@vindex cvs-unknown-face (face)
-@vindex cvs-handled-face (face)
-@vindex cvs-need-action-face (face)
-@vindex cvs-marked-face (face)
+@vindex cvs-header (face)
+@vindex cvs-filename (face)
+@vindex cvs-unknown (face)
+@vindex cvs-handled (face)
+@vindex cvs-need-action (face)
+@vindex cvs-marked (face)
+@vindex cvs-msg (face)
PCL-CVS adds a few extra features, including menus, mouse bindings, and
-fontification the @samp{*cvs*} buffer. The faces defined for
+fontification of the @samp{*cvs*} buffer. The faces defined for
fontification are listed below:
@table @samp
-@item cvs-header-face
+@item cvs-header
used to highlight directory changes.
-@item cvs-filename-face
-used to highlight file names.
+@item cvs-filename
+Used to highlight file names.
-@item cvs-unknown-face
-used to highlight the status of files which are @samp{Unknown}.
+@item cvs-unknown
+Used to highlight the status of files which are @samp{Unknown}.
-@item cvs-handled-face
-used to highlight the status of files which are handled and
+@item cvs-handled
+Used to highlight the status of files which are handled and
need no further action.
-@item cvs-need-action-face
-used to highlight the status of files which still need action.
+@item cvs-need-action
+Used to highlight the status of files which still need action.
+
+@item cvs-marked
+Used to highlight the marked file indicator (@samp{*}).
-@item cvs-marked-face
-used to highlight the marked file indicator (@samp{*}).
+@item cvs-msg
+Used to highlight CVS messages.
@end table