[EMAIL PROTECTED] on 02/26/2000 02:23:11 PM
>[ On Friday, February 25, 2000 at 20:28:11 (-0500), Noel L Yap wrote: ]
>> Subject: Re: removing the need for "cvs add file" to contact the server....
>>
>> I want to take a poll with regards to the following issue:
>>
>> "cvs add" must specially handle empty directory hierarchies such that no CVS
>> admin subdirectories are created within them.  (I've tried to be as unbiased
>> with this statement as I can).
>
>This isn't an issue that users can simply decide and then "make it so".
>The current CVS implementation takes this matter right to its core and
>it cannot be kept consistent and logical without treating empty
>directories as simply left-over garbage that must be removed.  This
>should be self evident to even someone who is not intimate with the
>implementation given they are aware of the constant barrage of replies
>to FAQs that tell people to always use "cvs checkout -P" and "cvs update
>-d -P" (preferably by putting those options in their ~/.cvsrc) and the
>fact that CVS forces the '-P' option whenever the workspace is derived
>from a branch.

I wasn't asking for a vote.  I was asking for a poll to gauge how my opinion
compares with that of the populous.  I've always said that "cvs co", "cvs
export", and "cvs up" should be the only commands treating empty hierarchies in
any special way.

>In relation to this thread I will note again that my "cvs add" will not
>do anything if no new files are found to add (i.e. it won't create any
>CVS administrative files unless they are necessary to describe a
>directory where a new file is being added, or any of the parent
>directories of that directory).  I will also note again that this is
>mostly just an optimisation (something that anyone using the NetBSD
>"pkgsrc" or FreeBSD "ports" or similar collections under CVS will
>appreciate immensely!).  Finally I will note, *again*, that this
>implementation also helps to avoid giving the wrong impression to CVS
>users about what directories are and what they do within the context of
>CVS.

Packages that have any (ie empty or not) directories they wish not to be "CVS
managed" (by your definition) should not be within any CVS-managed directories.
They should fix their build to reflect this.

1. Users who think directories are anything special need education.
2. Ironically, by treating empty directory hierarchies in a special way,
directories become specially treated objects in CVS.

Since "cvs add empty-hier" is an optimisation, it is not *necessary*.  It may
even be dangerous 'cos you give the false impression that there is no way to get
CVS admin subdirectories within local empty directory hierarchies.

Once there exists CVS admin subdirectories, how will "cvs ci" treat them if they
exist within empty directory hierarchies?  Will "cvs ci" further check if the
hierarchies are empty before creating the directories within the repo?  Will
"cvs ci" only create the repo directories once it detects a file?  If so, "cvs
ci" will also have to create CVS/fileattr within the repo for each of the
directories it has created.

Noel


Reply via email to