bug-cvs
[Top][All Lists]
Advanced

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

Re: hash.c.312: findnode:


From: Manu
Subject: Re: hash.c.312: findnode:
Date: Sun, 26 Jan 2003 03:54:40 +0100

Larry Jones wrote:


> Manu writes:
> > 
> > OTOH, I receive the same error message when trying to commit
> > "lib/Makefile src/Makefile", despite the fact that original files no
> > longer exist, and that new ones don't exist yet.
> > 
> > I think something wrong occurred with my repository, when
> > I performed step (2).
> 
> I don't think there's anything wrong with your *repository*, especially
> since you were able to do a new checkout without anything suspicious
> happening.

Why, after a new checkout or after cvs update, I always receive:
cvs server: nothing known about lib/Makefile
cvs server: nothing known about src/Makefile

Why committing these two files still gives an assertion failed, whereas neither
makefile or Makefile are in the repository, eg in lib:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/visual-mingw/visual-mingw/lib/
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/visual-mingw/visual-mingw/lib/Attic/
I'm pretty sure that under Linux, add + commit would work.

Attached file is a copy of the request I sent to SF.net. I took the time
to document exactly what happened step by step.
I really think something wrong occurred during step (2), believe me.

Anyway, I committed files under another name. Except "nothing known"
messages, all works fine. That's not a disaster :)

Now, users should be warned about that. I had absolutely no problem
with my repository since now.

> I think what happened is that the CVS/Entries file in your
> working directory had an entry for a file that no longer existed and
> that was confusing things.

I searched files containing "makefile" or "Makefile" through my working dir,
no entry except winui/src/Makefile. (working/winui/src/CVS/Entries)
I performed differently for that file and succeeded to rename it.

The solution is here BTW, we must be sure to manually delete the old file,
before any attempt to commit a new one.

> > Spying the client/server server/client exchanges could give good info.
> > Maybe a few printf() added....
> 
> They're already there -- look for the CVS_CLIENT_LOG environment
> variable in the manual.

Very good, thank you.

> > To "./configure && make" cvs-1.11.2 and 1.11.5 for MSYS, (a POSIX layer
> > for W*n32) see the very little hack I had to do:
> > 
> > diff -rup -x *.o cvs-1.11.2-orig/lib/savecwd.c cvs-1.11.2-msys/lib/savecwd.c
> > --- cvs-1.11.2-orig/lib/savecwd.c Mon Jul 10 20:45:04 2000
> > +++ cvs-1.11.2-msys/lib/savecwd.c Fri Dec 20 00:21:22 2002
> > @@ -57,7 +57,7 @@ save_cwd (cwd)
> >  
> >    if (have_working_fchdir)
> >      {
> > -#ifdef HAVE_FCHDIR
> > +#if defined(HAVE_FCHDIR) && !defined(__MSYS__)
> >        cwd->desc = open (".", O_RDONLY);
> >        if (cwd->desc < 0)
> >   {
> 
> What, exactly, was the problem you were having that prompted that
> change?  While the above is a reasonable workaround, it is not the
> correct solution to the problem.

Without that change, cvs cannot open directories, it outputs permission
denied errors.

Manu.

Attachment: request-674576.txt
Description: Text document


reply via email to

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