[EMAIL PROTECTED] on 02/29/2000 12:38:16 PM
>[ On Tuesday, February 29, 2000 at 08:34:25 (-0500), Noel L Yap wrote: ]
>> Subject: Re: removing the need for "cvs add file" to contact the server....
>>
>> You're absolutely correct again.  If someone has a .cvsignore file listing
all
>> their empty directories and does "cvs add; cvs ci", those empty directories
are
>> ignored.  If someone does a "cvs add empty-hier; cvs ci", he has explicitly
said
>> to add the empty directories.  The tool should not prevent him from doing so,
>> specially if it only does so as an "optimisation".  Your argument that the
>> NetBSD people will appreciate this optimisation has no foundation since they
can
>> easily achieve what you describe by:
>> 1. using .cvsignore
>> 2. not specifying the empty hierarchy as an argument to "cvs add"
>
>You do not seem to be able to hold the entire picture in your head at
>one time Noel!
>
>Directories are not managed (i.e. version controlled) by CVS!

Yes, I know.  However, they are created and acted upon by CVS.  Our differences
lie in what conditions they should be created.

>You cannot explicitly add empty directories.  You cannot explicitly add
>full directories!  You can only add files.  It does not matter whether
>you specify a those files explicitly, or whether you imply their
>specification by providing a directory name or whether you simply imply
>the current directory by providing no arguments -- they are all the same.

Let's go over it again.  All that "cvs add" will do is to create CVS admin
subdirectories.  I say it should do this whether or not the hierarchy is empty.
If "cvs add" checks for empty hierarchies, it'll do a lot more processing than
if it didn't.

>Thus "cvs add empty-hier; cvs ci" cannot be expected to do anything but
>chew on your disk for a little while!!!!!

You can tell me what I'll get with your proposal, but please don't tell me what
I should expect.

I expect "cvs add empty-hier" to create CVS admin subdirectories.  It must be
equivalent to "mkdir dir; touch dir/file; cvs add dir; cvs rm dir" (where "dir"
is "empty-hier" of course).  I don't understand how you can disagree with this.
The local directory doesn't affect anyone.

I expect the following "cvs ci" to create those directories within the repo.
There is absolutely no reason why this cannot be.  I understand how you can
disagree with this.  However, as I've pointed out before (and you've totally
ignored) CVS does have one command ("cvs watch") that acts on directories, not
just the files within those directories.  Noone has complained about its
"impurity" or "inconsistency".  There's no reason why "cvs ci" cannot create
those directories in the repo.

It's fine if you don't want to include this within your proposal -- as soon as
you post your patch, I'll work on posting one that works as I (and probably
others) expect.

>With my version of CVS there will finaly be consistency across all of
>those CVS sub-commands which operate in a workspace and a directory name
>on the command line will always *only* imply the the operation on the
>unignored files within that directory.

<rhetorical_question> Then why allow directory names to be specified within
.cvsignore? </rhetorical_question>  Regardless of what you say, CVS does know
about and act on directories.  It's true that it doesn't version them but this
has nothing to do with not being able to create them explicitly.

Noel


Reply via email to