79 Commits

Author SHA1 Message Date
Peter Wemm
4fd2864862 Flip the default for CVS_RSH to "ssh". I am tired of getting asked this
all the time, and IMHO it is long overdue.
2001-02-23 04:52:30 +00:00
John Polstra
ae5dbaf270 Fix a bug that shows up when checking out files by date with the
"-D date" command line option.  There is code in the original to
handle a special case.  If the date search finds revision 1.1 it
is supposed to check whether revision 1.1.1.1 has the same date
stamp, which would indicate that the file was originally brought
in with "cvs import".  In that case it is supposed to return the
vendor branch version 1.1.1.1.

However, there is a bug in the code.  It actually compares the date
of revision 1.1 for equality with the date given on the command
line -- clearly wrong.  This commit fixes the coding bug.

There is an additional bug which is _not_ fixed in this commit.
The date comparison should not be a strict equality test.  It should
allow a fudge factor of, say, 2-3 seconds.  Old versions of CVS
created the two revisions with two separate invocations of the RCS
"ci" command.  We have many old files in the tree in which the
dates of revisions 1.1 and 1.1.1.1 differ by 1 second.

Approved by:	peter
2000-10-29 03:56:49 +00:00
Peter Wemm
ba9369b9b9 Merge changes from 1.10.7 -> 1.11 into mainline. Note that the old
anoncvs no-password hack is gone and is replaced by the official version.
2000-10-02 06:43:58 +00:00
Peter Wemm
d65e2e3fd6 This commit was generated by cvs2svn to compensate for changes in r66525,
which included commits to RCS files with non-trunk default branches.
2000-10-02 06:33:59 +00:00
Peter Wemm
a3b502f88f Import cvs-1.11 onto vendor branch. 2000-10-02 06:33:59 +00:00
Kris Kennaway
cb358f5cfb Use X x X's in mkstemp(). 2000-01-10 08:56:01 +00:00
Peter Wemm
dd4450d659 I believe this fixes the problem certain people have been seeing when doing
checkouts from a local repo and committing via remote cvs.  A cvs -d
override of the mismatched CVS/Root files was missing.  This is a client
side fix, I'd appreciate it if the folks having trouble with this would
update their cvs client and pay particular attention next time..
2000-01-06 17:57:24 +00:00
Peter Wemm
5e84812fa3 Take a shot at using mkstemp() since we have a __warn_references() on
the other temporary file creation functions..
1999-12-11 14:58:02 +00:00
Peter Wemm
337c65c54d Merge error. rcs_lockfile is freed after unlock. 1999-12-11 13:19:17 +00:00
Peter Wemm
f1ddedaa09 Merge cyclic changes from 1.10.7 into our mainline. I did this seperately
as cvs update -j had kittens over the whole thing and I ended up merging
it by hand.
1999-12-11 13:00:18 +00:00
Peter Wemm
9bd45385bc Merge cyclic changes for 1.10.7 only our mainline. 1999-12-11 12:50:10 +00:00
Peter Wemm
d818196804 Import cvs-1.10.7. There are a number of nasty bugs that have been fixed.
Obtained from:  cyclic.com
1999-12-11 12:24:21 +00:00
Peter Wemm
6687a375a9 This commit was generated by cvs2svn to compensate for changes in r54427,
which included commits to RCS files with non-trunk default branches.
1999-12-11 12:24:21 +00:00
David E. O'Brien
b0576ff7e0 Call isspace() directly to get rid of an objectionable include. 1999-12-04 08:44:05 +00:00
David E. O'Brien
eaf4925a25 Support the environtmental var "CVS_OPTIONS". Which can hold a set of
default options for cvs.  These options are interpreted first and can be
overwritten by explicit command line parameters.

Obtained from:	GNU Grep 2.3
1999-12-04 01:23:26 +00:00
Peter Wemm
9515a35166 If running on the client side of a remote commit, don't reject root when
trying to do a commit.  The server side will use the correct name, and the
client side restriction is just an annoyance.

Requested by:  lots of folks
1999-10-25 06:24:11 +00:00
Bruce Evans
1e455c280e Fixed style bugs in FreeBSD changes. KNF style doesn't apply to gnu
sources.
1999-07-04 15:46:44 +00:00
Peter Wemm
059af14f8e Don't assume branch heads are alive.. (related to previous change to the
older 1.9.26 baseline)
1999-05-10 13:49:51 +00:00
Peter Wemm
46a2066259 Merge cvs-1.9.xx -> 1.10 changes onto mainline.
Changes of significance include the top level CVS directory being optional
and defaulting to off..
1999-03-18 09:32:46 +00:00
Peter Wemm
b791882da9 Merge cvs-1.9.xx -> 1.10 changes onto mainline.
The merge turned up a long-standing bug in local additions.  I'm not
quite sure it's right yet.  (the code in question is dealing with
diffs relative to "HEAD" and dead revisions).
1999-03-18 09:31:26 +00:00
Peter Wemm
0008866e58 Import cvs-1.10 onto vendor branch. Merge to follow shortly.
Obtained from:	cyclic.com
1999-03-18 09:21:42 +00:00
Peter Wemm
6a2d2db53b This commit was generated by cvs2svn to compensate for changes in r44852,
which included commits to RCS files with non-trunk default branches.
1999-03-18 09:21:42 +00:00
Matthew Dillon
467e41453a Fixed typo in previous commit. oops. 1998-12-03 07:25:13 +00:00
Matthew Dillon
da1852b35a Reviewed by: "Jordan K. Hubbard" <jkh@zippy.cdrom.com>, cvs-all@freebsd.org
Add '-g' main option to cvs to better support shared-group access
    to a common checked-out *working* set by multiple users.  See manual
    page for details.
1998-12-03 07:22:44 +00:00
Warner Losh
74542ae78c Use readlink correctly 1998-09-09 17:05:54 +00:00
Peter Wemm
989c137029 If we are logging into a cvs pserver with the username of "anoncvs",
and we have not done an explicit 'cvs login', then use a default password
of "anoncvs".  This allows things like:
  setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/cvs
  cvs checkout src  (without doing the normal 'cvs login' for pserver mode)
but this runs over the :pserver: protocol rather than the more troublesome
rsh.  Naturally, the server had better be running in -R (readonly) mode :-)
1998-05-27 16:55:49 +00:00
Peter Wemm
0e202e40d7 Make cvs really ignore a pserver password when the passwd field of the
CVSROOT/passwd file is empty.  A 'cvs login' still seems to be required
since the cvs client doesn't seem to believe it's possible to not need
a password (yet :-).  This is intended for cheap anoncvs use.
1998-05-27 16:27:18 +00:00
Peter Wemm
41f4688892 It would help if it compiled. *blush* 1998-05-27 16:00:55 +00:00
Peter Wemm
07870b45ae Add a new long flag that causes cvs to ignore the CVSROOT/passwd file.
This is mostly intended for use on freefall where we'd like to provide
a passwd file for easy anoncvs mirroring access, but don't want to open
up the pserver on freefall itself.

While here, some initial tweaks intended for allowing an empty pserver
password.  I'm not sure that this works yet.
1998-05-27 15:26:12 +00:00
Peter Wemm
f07a3e4e23 Remove my hacks for capturing stdout/stderr through the protocol channel
while calling libdiff.  It's too ugly and not worth the recursion problems
when there is a malloc failure (which writes to stderr - now diverted via
the buf system, which calls malloc, which causes another error message etc).

We can live with the standard artificial slowdown, but reduce the time a
bit and only delay when we really need to (ie: when running as a server).
The usleep time could probably use some tuning, it basically needs to
replace the time that it used to take to fork a large process, exec gnudiff
and the time that gnudiff took before writing the initial output.

This eliminates a whole mess of other hacks I was considering that changed
use of xmalloc to alloca() etc.  It was going too fast in the wrong
direction.
1998-05-27 15:19:23 +00:00
Peter Wemm
044b7805a9 Argh!.. Spot the deliberate mistake that was probably causing the
leftover files in /tmp..  (this commit brought to you by 'cvs update -j')
1998-04-11 16:12:07 +00:00
Peter Wemm
ab10ac1949 Tweak from the cvs sources just after the 1.9.26 release:
1998-03-07  Tim Pierce  <twp@skepsis.com>
    * rcs.c (RCS_checkout): Negation bug when checking out symlinks:
    existence_error should be !existence_error.

This shouldn't cause any major merge problems later.
1998-03-11 09:30:51 +00:00
Peter Wemm
bde4819bd2 Merge changes from vendor branch into mainline 1998-03-10 13:58:02 +00:00
Peter Wemm
4b06c89291 Import cvs-1.9.26 onto vendor branch 1998-03-10 13:40:57 +00:00
Peter Wemm
f380a4f2e1 This commit was generated by cvs2svn to compensate for changes in r34461,
which included commits to RCS files with non-trunk default branches.
1998-03-10 13:40:57 +00:00
Peter Wemm
950fca26ed A hack to work around the sleep prior to calling the built-in diff. This
affects speed of doing 'cvs diff' (in all modes) and 'cvs update' over the
network.

1: don't pause at all unless running in server protocol mode.
2: if running in server protocol mode, do a kludge that intercepts the
   stdout and stderr write functions and diverts them to cvs_output() and
   cvs_outerr().  Yes, this might be done with fwopen() etc, but that also
   requires copying "FILE" structs since you can't freopen stdout etc and
   specify functions at the same time.

This HACK will go away once the cvs folks have done their changes to the
library version of gnu diff to use the callbacks as mentioned in the
comments.
1998-02-14 09:47:14 +00:00
Peter Wemm
8f3f2b2e9d Reduce the sleep(1) inbetween each diff, as suggested by bde some time
ago.  The real fix is rather large.
1998-02-08 06:48:37 +00:00
Peter Wemm
178f53ff27 Cosmetic cleanups for the local tag support. Since rcs isn't called
anymore, don't do all the putenv's for it's benefit.
1998-01-31 01:39:40 +00:00
Peter Wemm
b1408ba741 Merge vendor changes to files that we've touched onto mainline.
(If only all import/merges were this trivial :-)
1998-01-30 15:35:26 +00:00
Peter Wemm
7b9d411405 Import cvs-1.9.24 since it came quite soon after the snapshot that was
imported a few days ago.  There is very little difference, except that
the remote protocol apparently supports wrappers and -k options better.
1998-01-30 15:31:47 +00:00
Peter Wemm
a0c60322a8 This commit was generated by cvs2svn to compensate for changes in r32896,
which included commits to RCS files with non-trunk default branches.
1998-01-30 15:31:47 +00:00
Peter Wemm
3d0e86bdb6 Remove stray files 1998-01-26 04:47:16 +00:00
Peter Wemm
2dfc3bcde9 missing bracket 1998-01-26 03:54:53 +00:00
Peter Wemm
64c8118794 Merge changes from CYCLIC onto main branch 1998-01-26 03:29:29 +00:00
Peter Wemm
d302a0c08c Merge changes from CYCLIC branch onto mainline. rcs.[ch] still to come. 1998-01-26 03:24:11 +00:00
Peter Wemm
57e58c3aa7 Import cvs-1.9.23 as at 19980123. There are a number of really nice
things fixed in here, including the '-ko' vs. -A problem with
remote cvs which caused all files with -ko to be resent each time
(which is damn painful over a modem, I can tell you).  It also found a
heap of stray empty directories that should have been pruned with the -P
flag to cvs update but were not for some reason.

It also has the fully integrated rcs and diff, so no more fork/exec
overheads for rcs,ci,patch,diff,etc.  This means that it parses the control
data in the rcs files only once rather than twice or more.

If the 'cvs diff' vs. Index thing is going to be fixed for future patch
compatability, this is the place to do it.
1998-01-26 03:09:57 +00:00
Peter Wemm
edd1d86130 This commit was generated by cvs2svn to compensate for changes in r32785,
which included commits to RCS files with non-trunk default branches.
1998-01-26 03:09:57 +00:00
Andrey A. Chernov
e562327407 Back out my -L change, now "patch -I" usage supposed to get Index:
precedence
1998-01-21 15:20:29 +00:00
Andrey A. Chernov
0d913a0d1a Fix wrong ---/*** names produced using -L diff option
CVS gurus from info-cvs agrees that previous Index: usage is bogus
1998-01-16 06:00:36 +00:00
Julian Elischer
34bda5731d Allow a -D'date' option to be included with a -r'branch'
on a checkout.
this allows us to do:
cd /usr/src/sys
cvs update -rRELENGE_2_2 -D"Yesterday"
which has been a feature sorely needed for any project with active branches.

warning: this breaks on usr.sbin/pkg_install for some reason.
everything else works as advertised.
(other things allready break on pkg_install, so it's not the fault of
this patch, it just falls faul of another bug somewhere)
If I had more time I'd make -r always accept the same syntax as -j (tag:data)
1998-01-12 06:51:07 +00:00