info-cvs
[Top][All Lists]
Advanced

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

Re: update not getting empty directories


From: Eric Siegerman
Subject: Re: update not getting empty directories
Date: Tue, 24 Dec 2002 13:13:05 -0500
User-agent: Mutt/1.2.5i

To begin, your statement of the problem is inconsistent.  First
you say (case 1):
> [...] sometimes checkouts and updates ignore directories that only contain 
> other directories, even if those sub-directories contain source files.
>
> so if $CVSROOT/foo only has a directory called bar in it $CVSROOT/foo/bar
    
    $CVSROOT/
        foo/
            bar/
                blat.c,v    # Implied by your first sentence

But then you say (case 2):
> Is there any way to make all clients always check out everything even if the 
> directories are empty??

    $CVSROOT/
        foo/                # Not even a "bar" subdir

These are very different situations.  There's actually a third
case, intermediate between those two (call it 1.5):  A directory
contains subdirectories, but there are no files anywhere under
it, at any depth:

    $CVSROOT/
        foo/
            bar/
                subsub/
            baz/


On Mon, Dec 23, 2002 at 10:46:29PM +0000, Steve Salazar wrote:
> I have a problem where a repository on a lan shared disk (both via nfs and 
> samba)

Potential problem 1: the shared repo.  Don't do that; use
client/server CVS instead.  Actually, I can't see an obvious
reason for the remote-mounted repo to cause *this* problem, but
it's well known for causing *other* problems -- and rather more
severe ones at that, such as corrupted ,v files -- especially in
heterogeneous environments like yours!

> sometimes checkouts and updates ignore directories that only contain 
> other directories, even if those sub-directories contain source files.

Potential problem 2 (and the most likely one, IMO): unexpected
options in effect.  The -P option to checkout and update causes
foo to be suppressed in cases 1.5 and 2.  It tells CVS to
suppress "empty" directories.  That includes those that are truly
empty, but also those that "become" empty once empty
subdirectories have been suppressed.

The -l option causes foo to be suppressed unconditionally, i.e.
in all three cases (and even if foo does contain files directly,
a fourth case not shown above).

Perhaps one of these options is in the user's .cvsrc on some of
the clients.

> On solaris we are using cvs version 1.11 and on linux we are using cvs 
> version 1.11.2

Potential problem 3: the old CVS version.  Not likely, since it's
with the newer version on Linux that you're having problems.  But
many many bugs have been fixed since 1.11; even if an upgrade
doesn't solve this particular problem, it's well worth doing.

--

|  | /\
|-_|/  >   Eric Siegerman, Toronto, Ont.        address@hidden
|  |  /
Just Say No to the "faceless cannonfodder" stereotype.
        - http://www.ainurin.net/ (an Orc site)



reply via email to

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