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

Re: proposal: changelist feature

From: Gareth McCaughan <gareth.mccaughan_at_pobox.com>
Date: 2006-04-18 02:28:53 CEST

> So yeah, we have a couple of big tensions here:
>
> * streamy output vs. displaying grouped-changelists:
...
> * not breaking existing parse-scripts too much

The operation that's difficult to provide nice
output for is the one that supplies changelist
information for multiple paths that might be in
multiple changelists. The key difficulty is that
the paths and the changelists are both variable-length.

So, how would it be to decouple so that the only
operation available that lists all changelists
did *only* that? In other words, you'd get

  - svn list-changelists

    (lists concisely what changelists there are;
    perhaps actually svn status --list-changelists
    or svn changelist --list)

  - svn status

    (same as at present; lists all changed paths)

  - svn status --changelist <name>

    (restricts to changes that are part of the given
    changelist; perhaps multiple --changeset args
    can be given, producing multiple lists but no
    more efficiently than running svn status multiple
    times with one --changeset each)

That way everything can stay streamy, and you don't
have multiple variable-length fields on a line, and
all the information you'd need is available, and
you don't need to deal with funky indirected output.

The downside, of course, is that you don't get the
ability to see all changed paths with their changelist
names; how much would that matter? Not too much, I'm
inclined to think, but I'm just guessing.

Remark: It should probably be possible to attach a
(typically short) description to a changelist; the
changelist-listing command should be able to provide
those descriptions as well as just the names.

    $ svn changelist issue-1234 --description "Adding the algebraic
equation-solving feature." commands.c solve.c constants.h
    commands.c is is now part of changelist 'issue-1234'.
    solve.c is is now part of changelist 'issue-1234'.
    constants.h is is now part of changelist 'issue-1234'.
    
    # oops
    $ svn changelist issue-1234 --remove constants.h
    constants.h is no longer part of changelist 'issue-1234'.
    
    [...]
    
    $ svn changelist --list
    issue-1234
    issue-4321
    gb-refactor
    
    $ svn changelist --list --verbose
    issue-1234
      Adding the algebraic equation-solving feature.
    issue-4321
      Fixing jsmith's bug where we claim that 1=0.
    gb-refactor
      Diddling the data structures for the Groebner
      basis calculations.
    
    $ svn status --changelist issue-1234
    M commands.c
    A solve.c
    
    $ svn status --changelist issue-1234 --changelist issue-4321
    * Changelist 'issue-1234':
    M commands.c
    A solve.c
    * Changelist 'issue-4321':
    M constants.h
    M equality.c

-- 
g
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Apr 18 02:29:26 2006

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.