Mercurial > emacs
view lib-src/vcdiff @ 11597:d6d53a54da18
(vc-backend-checkout): Pass vc-checkout-switches arg
properly to vc-do-command.
(vc-update-change-log): Use vc-buffer-backend in menu-enable.
(vc-file-clearprops, vc-workfile-version): Functions moved to vc-hooks.el.
Add branch support for RCS; treat CVS more like RCS and SCCS.
(vc-next-action-on-file): changed CVS handling, such that C-x C-q
works as with RCS and SCCS.
(vc-consult-rcs-headers): New function.
(vc-branch-version): New per-file property, refers
to the RCS version selected by `rcs -b'.
(vc-workfile-version): New function. Also new per-file property
(vc-consult-headers): New parameter variable.
(vc-mistrust-permissions): Default set to `nil'.
(vc-locking-user): Property is now cached. The other functions
update it as necessary. Attempts to use RCS headers if enabled.
(vc-log-info, vc-parse-buffer): Various bug fixes. Added support
for property `vc-branch-version'.
(vc-backend-checkout): RCS case: if no explicit version
is specified, check out `vc-workfile-version'. After check-out,
set `vc-workfile-version' according to the version number
reported by "co".
(vc-backend-checkin): RCS case: remove any remaining locks
if a new branch was created. After every check-in, adjust
the current branch using `rcs -b' (this cannot be avoided).
CVS case: allow for explicit checkin, but only on the trunk.
(vc-next-action-on-file, vc-backend-checkout, vc-backend-checkin,
vc-backend-revert, vc-backend-diff): Explicitly use
vc-workfile-version as the default version to operate on.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 26 Apr 1995 10:12:24 +0000 |
parents | 7124a811b67b |
children | da322c027bf0 |
line wrap: on
line source
#!/bin/sh # # Enhanced sccs diff utility for use with vc mode. # This version is more compatible with rcsdiff(1). # # $Id: vcdiff,v 1.3 1993/08/25 08:18:56 eggert Exp eggert $ # DIFF="diff" usage="$0: Usage: vcdiff [--brief] [-q] [-r<sid1>] [-r<sid2>] [diffopts] sccsfile..." PATH=$PATH:/usr/ccs/bin:/usr/sccs # common SCCS hangouts echo= sid1=-r sid2= for f do case $f in -*) case $f in --brief) DIFF=cmp;; -q) echo=:;; -r?*) case $sid1 in -r) sid1=$f ;; *) case $sid2 in ?*) echo "$usage" >&2; exit 2 ;; esac sid2=$f ;; esac ;; *) options="$options $f" ;; esac shift ;; *) break ;; esac done case $# in 0) echo "$usage" >&2 exit 2 esac rev1= rev2= status=0 trap 'status=2; exit' 1 2 13 15 trap 'rm -f $rev1 $rev2 || status=2; exit $status' 0 for f do s=2 case $f in s.* | */s.*) if rev1=/tmp/geta$$ get -s -p -k $sid1 "$f" > $rev1 && case $sid2 in '') workfile=`expr " /$f" : '.*/s.\(.*\)'` ;; *) rev2=/tmp/getb$$ get -s -p -k $sid2 "$f" > $rev2 workfile=$rev2 esac then $echo $DIFF $options $sid1 $sid2 $workfile >&2 $DIFF $options $rev1 $workfile s=$? fi ;; *) echo "$0: $f is not an SCCS file" >&2 esac if test $status -lt $s then status=$s fi done