info-cvs
[Top][All Lists]
Advanced

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

Re: Ignore local changes?


From: Kaz Kylheku
Subject: Re: Ignore local changes?
Date: Wed, 2 Apr 2003 12:47:05 -0800 (PST)

On Wed, 2 Apr 2003, Larry Jones wrote: 

> Date: Wed, 2 Apr 2003 14:01:30 -0500 (EST)
> From: Larry Jones <address@hidden>
> To: Eric Siegerman <address@hidden>
> Cc: address@hidden
> Subject: Re: Ignore local changes?
> 
> Eric Siegerman writes:
> > 
> > CVS should probably print a warning in this case, but it doesn't.
> 
> "This case" is updating a file with a sticky tag or date, which seems
> like a good idea to me, too.  Anyone disagree?

I agree conditionally. 

If you have many files (for instance all of them!) sticky to a
revision, you don't want a separate warning for each file. What if they
are all sticky?

Proposal: issue a warning only for those files which are sticky to
something different from what their containing directory is sticky to.

Examples: 

1. The directory ``x'' is sticky to ``foo_branch'' but files ``x/a'' and
``x/b.c'' are sticky to versions 1.3 and 1.9 respectively. The update
operation over the directory warns in this case for these two files.

2. The directory ``x'' is sticky to ``foo_release_1'' but files
``x/a'' and ``x/b.c'' are not sticky to anything. Update over the
directory does update these two files, but produces a warning.

3. The directory ``x'' on the main trunk, but files ``x/a'' and
``x/b'' are sticky to ``foo_branch''. Update warns for both.

4. The directory ``x'' is sticky, and ``x/b'' is
not sticky. The user selectively updates ``x/b''. No warning.

5. The directory ``x'' is sticky to something, and ``x/b'' is
sticky to something else. The user selectively updates ``x/b''. No warning.

6. The directory ``x'' is not sticky, and ``x/b'' is
sticky. The user selectively updates ``x/b''. No warning.

7. The directory, and all its files, are sticky to the same tag,
``release_1_0''. Update does nothing, and produces no warning.
Alternative: update warns that nothing is being done because
of the sticky tag.

Basically any situation in which the stickiness of a file contradicts
the stickiness of the directory should be a cause for warning on
update.   A commit, if otherwise allowed, should probably fail because
of this: the user should be forced to commit the differently-sticky
files individuall.

Example:

8. The directory ``x'' is sticky to branch ``foo'' and ``x/b'' is
sticky to branch ``bar''. User commits in the directory. The commit
fails, explaining the stickiness conflict---that the commit would
be split into two or more branches.

9. The directory ``x'' is sticky to branch ``foo'' and ``x/b'' is
sticky to branch ``bar''. User commits ``x/b'' selectively.
The commit proceeds normally.





reply via email to

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