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

Re: Re: Merge dialog

From: Simon Large <simon.tortoisesvn_at_googlemail.com>
Date: 2007-10-19 10:50:28 CEST

On 19/10/2007, Stefan Küng <tortoisesvn@gmail.com> wrote:
> On 10/19/07, Simon Large <simon.tortoisesvn@googlemail.com> wrote:
>
> > Page 1 should include 2 radio buttons:
> > ( * ) Merge a range of revisions from one source
> >
> > ( ) Merge two trees
> >
> > and a large text area underneath which gives a description of the two
> > use cases when the mouse hovers over the buttons.
> >
> > [ Next ]
>
> That's what I implemented yesterday. I just hope people can understand
> the difference between a revrange merge and a tree merge.

That's why there is a big text area underneath to explain what they mean :-)
And of course there has to be a help button on each page.

> > Page 2 is for selection of the URL(s) and revisions. How it looks
> > depends on which option you selected.
> >
> > 2a. Merge a range of revisions:
> > [ Combo box for the From: URL ]
> > [ Edit box for the revisions to merge ]
> > [ Show log button for URL ]
> > [ Show log button for WC ]
>
> I never really understood the need for the "show log for wc" button.
> Is this really necessary?

Because in pre-1.5 you depend on the logs of your merge target (ie.
WC) to tell you which revisions you have already merged. Having the
log dialog for the WC makes it easier to scan through to see how far
you got with the merging last time. This was one of Mark Phippard's
requests.

> > [ ] Checkbox for auto merge
>
> I thought of keeping the auto merge as a separate context menu entry
> and not integrate it into the merge wizard. After all, the auto merge
> should be fast, which a wizard is by definition *not*.
> And since the auto merge should only be used by those who know what
> they're doing, I thought of moving that context menu entry to the
> 'shift-right-click' part of the menu.

OK, that makes sense.

> > [ ] Checkbox for reverse merge ???
>
> Not sure about that one yet. Maybe this could be done by the user
> specifying the revision range in reverse?

Not if they have used the log dialog to select a range, or cherry
pick. It was easy before as we only allowed a single range, so
swapping the numbers was trivial.

> > The revision range is in svn -c style (rather than -r) and can be a
> > list of revisions and ranges. Use the Show Log for URL dialog as an
> > alternative means of populating this box.
>
> is the -c style somewhere documented?

http://svnbook.red-bean.com/en/1.4/svn.ref.svn.html#svn.ref.svn.sw

This just refers to a single revision. I think I remember reading on
the svn dev list about proposals to extend this to cover ranges, but
I'm not sure how far it got. Anyway what I had in mind was a list
like:
4,7,10-25,38-40,51
which merges those specific changes. That would effectively be 5
separate merges:
3:4, 6:7, 9:25, 37:40, 50:51

> > The Show Log for WC is useful for pre-1.5 systems where the WC log
> > (hopefully) shows which revisions have been merged in the log
> > messages.
>
> > I don't think we need to offer HEAD as a separate control, although we
> > could permit HEAD in the edit box.
>
> Yes, I was thinking to allow any possible revision in the edit box,
> including HEAD, WC.
>
> > Reverse merge is questionable. If revision lists are supported, as I
> > think they are, then there is no easy way to specify this any more,
> > particularly from the Show Log dialog. Recent posts on the svn dev
> > list have been using this term, so it does have some official meaning.
>
> I have to try this first. If it's possible to specify a reverse range,
> then we don't need a checkbox "reverse merge". Otherwise I'll add such
> a checkbox.
>
> > 2b. Merge two trees
> > [ Combo box for From: URL ]
> > [ Edit box for @revision ] [ Show Log ]
> >
> > [ Combo box for To: URL ]
> > [ Edit box for @revision ] [ Show Log ]
>
> Almost done. Didn't had the time to finish this yesterday.
>
> > HEAD may be a valid option here, although we recommend against it in
> > the docs. A better option than HEAD could be "WC update revision" but
> > that needs a crawl.
>
> The current merge dialog already does the crawl, so this won't be so bad.
>
> > No need for the 'Use from URL' checkbox any more.
> > Merge tracking doesn't work for 3-way merge, so no need for any of
> > that here either.
>
> True - much less clutter in the dialog.
>
> > I don't like the "From:" and "To" names because they appear to be the
> > wrong way round, but I don't know what else to call them. And neither
> > of them has to refer to the WC URL, which is yet another use case (eg.
> > Vendor branches).
> >
> > In both these cases, an info pane at the bottom would show the WC path and URL.
>
> WC path yes, but the URL isn't really necessary.

We have it at the moment, but I admit that part of the dialog looks untidy.

> > 3. Select merge settings.
> > This is the bottom groupbox of the current merge dialog.
> >
> > The action buttons can also appear on this page. They won't all be
> > relevant all of the time so some may be greyed out. There should be a
> > [ Back ] button too.
>
> I like to make yet another page for the action buttons.
>
> > I don't think there is any need to show all the URLs again. All the
> > path selection is done on page 2 and you don't need to review that
> > when selecting settings. Even if you do, it's only a Back button away.
>
> Yes, the back button is your friend. We want to use the wizard to
> *reduce* the clutter in the merge dialog, not keep it or use the
> gained space to add even more controls and information.

Simon

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Fri Oct 19 10:50:39 2007

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

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