bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

cvswrappers behavior different for pserver connections


From: Stewart Heitmann
Subject: cvswrappers behavior different for pserver connections
Date: Fri, 12 Oct 2001 18:39:50 +1000

I am getting different behaviours when I add
files to cvs according to the method I use
(pserver or $CVSROOT on local machine).

My cvswrappers file is
   *.txt -m MERGE -k 'kv'
   * -k 'b'
Which should add *.txt files into the repository
as text and everything else as binary.

Indeed it works perfectly when I run CVS locally on the
same machine as the cvs repository.
BUT, when I do the same from a remote client
accessing via the pserver method I found that
all files get added as binary regardless.
Its as though the pserver method causes CVS to
ignore the
   *.txt -m MERGE -k 'kv'
entry in cvswrappers and matches everything against
   * -k 'b'

Here's some results:

First, the correct results when running CVS locally:
  bash-2.04$ touch test3.txt test3.other
  bash-2.04$ cvs -t add test3.*
  cvs add: notice: main loop with CVSROOT=/usr/local/home/cvsadmin/cvsroot
   -> Register(test3.other, 0, Initial test3.other, -kb,  )
  cvs add: scheduling file `test3.other' for addition
   -> rename(CVS/Entries.Backup,CVS/Entries)
   -> unlink(CVS/Entries.Log)
   -> Register(test3.txt, 0, Initial test3.txt, ,  )
  cvs add: scheduling file `test3.txt' for addition
   -> rename(CVS/Entries.Backup,CVS/Entries)
   -> unlink(CVS/Entries.Log)
  cvs add: use 'cvs commit' to add these files permanently

Here you can see that test3.other gets added with the -kb flag
but test3.txt does not. Thats great!
But do the same thing on a client machine:

   administrator@STEWART-PC //h/Projects/misc/testmodule
   $ touch test15.txt test15.other

   administrator@STEWART-PC //h/Projects/misc/testmodule
   $ cvs -t add test15.*
   cvs add: notice: main loop with
CVSROOT=:pserver:stewart@corvus:/home/cvsadmin/cvsroot
   S-> server_register(test15.other, 0, Initial test15.other, -kb, , , )
   S-> Register(test15.other, 0, Initial test15.other, -kb,  )
   cvs server: scheduling file `test15.other' for addition
    -> Register(test15.other, 0, dummy timestamp, -kb,  )
   S-> rename(CVS/Entries.Backup,CVS/Entries)
   S-> unlink(CVS/Entries.Log)
   S-> server_register(test15.txt, 0, Initial test15.txt, -kb, , , )
   S-> Register(test15.txt, 0, Initial test15.txt, -kb,  )
   cvs server: scheduling file `test15.txt' for addition
    -> Register(test15.txt, 0, dummy timestamp, -kb,  )
   S-> rename(CVS/Entries.Backup,CVS/Entries)
   S-> unlink(CVS/Entries.Log)
   cvs server: use 'cvs commit' to add these files permanently
    -> rename(CVS/Entries.Backup,CVS/Entries)
    -> unlink(CVS/Entries.Log)

and you can see that both test15.other and test15.txt get added
with the -kb flag, when only test15.other should be so.

How can this be?
Is this a bug in CVS?

In my case both machines are running CVS 1.11.
The server is running on FreeBSD and the client on Windows 2000
(running cygwin, but that shouldnt matter).
I can get repeat the correct results when running cvs on a local
repository on the Windows box too, so it seems to be something to
do with the pserver connection.

Any ideas?

Stewart Heitmann



reply via email to

[Prev in Thread] Current Thread [Next in Thread]