[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: overlapping change lists?

From: David Glasser <glasser_at_davidglasser.net>
Date: 2007-10-08 18:31:04 CEST

On 10/8/07, Ben Collins-Sussman <sussman@red-bean.com> wrote:
> > $ svn ci -mx --changelist l1
> > svn: Unknown changelist 'l1'
> >
> > "Unknown"? Even "stat" at least knows of this changelist, though it
> > shows no changes therein, what's this "unknown" business? OK, let's
> > try:
> >
> > $ echo >> src/foo.c
> > $ svn ci -mx --changelist l1
> > Sending src/foo.c
> > Transmitting file data .
> > Committed revision 2329.
> >
> > OK, so "ci" can make the intended sense of a changelist when there
> > are changes there, though not so much when they're not.
>
>
> There's sort of a bug here, and sort of not.
>
> If you had typed 'svn commit src src/foo.c', and there were no local
> edits to commit, I would expect nothing to happen. Commit returns 0,
> it's a no-op.
>
> However, it looks like you found a buglet... I think the existence of
> the directory path in the changelist *and* lack of changes to commit
> caused the commit codepath to error weirdly.
>
>
> > Then there's the behavior of auto-removal from a changelist. If you
> > commit a change, the item is removed from any change list where it
> > might reside; good so far. But if you commit the changelist, and it
> > contains some unmodified objects, they are not removed from the
> > change list.
>
> Yes, the design doc explictly states that "being a member of a
> changelist" and "having local mods" are completely orthogonal things.
> They have no effect on each other.

Well, sure, but if they're orthogonal (which makes sense), then
whether or not something has local mods shouldn't affect the behavior
of

$ svn ci --changelist foo

if the user expects that to clear 'foo' post-commit. However, because
of the way changelists are implemented for the commit command, only
"committable" elements (and not unmodified ones) ever get seen by the
commit and so unmodified items get left on the changelist. If they
really are orthogonal it shouldn't make a difference!

Also, with respect to the main issue here: I would support just not
allowing directories to be on changelists, at least for 1.5. It does
seem that having directories on changelists leads to a lot of
interface complexity; if we're trying to start stabilizing this week,
why not just limit the scope of the new feature? If we find that
users are dying for a way to put directories on changelists then we
can add that in 1.6; by that point we'll have a better idea of whether
or not it is more useful to treat it as depth-0 or depth-infinity.

--dave

-- 
David Glasser | glasser_at_davidglasser.net | http://www.davidglasser.net/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Oct 8 18:31:44 2007

This is an archived mail posted to the Subversion Dev mailing list.