bug-cvs
[Top][All Lists]
Advanced

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

Re: cvs diff -uN - issue


From: Mark D. Baushke
Subject: Re: cvs diff -uN - issue
Date: Tue, 11 Mar 2003 12:53:20 -0800

J. Grant <jg-web@jguk.org> writes:

> Thank you for the swift reply.

It seems I was a little too swift. I didn't look closely at the
client/server protocol ... :-(

> on the 10/03/03 17:50, Mark D. Baushke wrote:
> > J. Grant <jg-web@jguk.org> writes:
> >
> >> I have not heard anything back from my last email to the
> >> cvs-info@gnu.org address, so I hope you might be able to address this 
> >> issue.
> >> Using 1.11.5 server, and 1.11.2 client does not support "cvs diff
> >> -uN"
> >> correctly. No New files are included in the diff.
> >> ? README.PS2Linux
> >> ? src/joystick/ps2linux
> >> ? test/testactuator.c
> >> There are two files and one directory with files inside I need to
> >> add.
> >> I can not "cvs add" or "cvs import" because I do not have an CVS
> >> account, I am only a contributer.

> > A "cvs add" of a directory does you be able to have permission to
> > commit a new directory in the repository. The "cvs diff -uN" will
> > only diff files that are in your current tree that cvs has been told
> > about. These are either files that are cvs already knew about when
> > you did the checkout or files that you have told it about via a "cvs
> > add" command.

The above information is correct.

> > If you have other files in your tree, cvs will ignore them. This is
> > intentional.

> >> Is this a known issue? Is there a patch for this?

> > You should be able to "cvs add" new files to your tree even without
> > the ability to commit them to the repository as this is a local
> > operation.

The above information is NOT correct.

> These are the commands I have tested with:
> 
> 
> $ cvs -d :pserver:guest@libsdl.org:/home/sdlweb/libsdl.org/cvs login
> $ cvs -z3 -d :pserver:guest@libsdl.org:/home/sdlweb/libsdl.org/cvs
> checkout SDL12
> <snip>
> $ cd SDL12
> $ cvs add README.PS2Linux
> cvs [server aborted]: "add" requires write access to the repository
> $ ll README.PS2Linux
> -rwxr--r--    1 now3d    now3d         683 Mar  5 12:08 README.PS2Linux*
> 
> 
> I can not see why "cvs add" does not work as a local operation in my
> case.  Could you test this yourself and see if you also encounter this
> problem please?

The 'cvs add' command appears to need to contact the server to determine
if the user is allowed to add files or directories to the repository. The
server indicates that the user is not allowed and spews the error message
you quoted above, this seems to be very itentional to make sure that you
don't do work that you are not able to commit.

For myself, I typically develop patches based on a CVSup mirror of a
repository, but since I own all of the files, the 'add' and 'commit'
operations work fine. So, I never actually ran into your problem
previously.

> > For the new directory, well, you could just do something like:
> >     cvs diff -uNp > my-cvs.diffs
> >     mkdir empty-directory
> >     diff -uN empty-directory new-directory > my-new-directory.diffs
> > and then massage the output of the two .diffs files into a single
> > file for submission to whoever needs the patch.
> 
> Thanks, i managed to get a working patch using this method with -X
> SDL12/.cvsignore

Yes, that is about the only workaround I can give you at present.

I regret the bad information I shared with you previously.

        -- Mark




reply via email to

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