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

Re: TortoiseMerge: Use left file except marked blocks....

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Tue, 11 Mar 2014 20:44:59 +0100

On 10.03.2014 23:26, Simon Large wrote:
> Well it is correct but it is still confusing IMHO. The word 'except'
> implies leaving something out so you are effectively saying 'get rid
> of all the changes except the ones I marked', or 'mark the changes
> that you don't want to be left out' which is a double negative. To me
> it makes more sense to say a positive statement referring to the
> original state of the file. 'Use the original file, plus the changes I
> marked'.
>

You're right, as the feature is implemented right now it's a little bit
confusing.

First think is as you already mentioned the context menu text. The
mark/unmark are ok - maybe rename those to 'mark for use' or 'mark to
include'?

As for the context menu entry "use left file except marked blocks", how
about renaming that to "leave only marked blocks" or "revert unmarked
blocks"?

But what I really think is confusing:
after I mark a change, the view is not marked as modified. Sure, the
view itself isn't really modified yet but still I expect it to be. Then
when I save, I'd like to be reminded that there are marked blocks and
asked what to do with those.

So how about changing the feature to work like this:

* User marks blocks to include
* As long as there are marked blocks, the view is also marked as
modified to indicate that it needs saving
* When saving, a task dialog is shown like this:

       marked blocks
You have marked changed blocks. How should those blocks be saved?

    Save and include
     Your changes are saved and the marked blocks are included
    Save and exclude
     Your changes are saved and the original content is used
    Save and ignore marked blocks
     Only your manual edits are saved, marked blocks are left as they are
    Cancel
     Your changes are not saved

This way after marking some blocks you can not just quit TMerge without
any notice as you can do right now.

Or at least, when trying to exit/quit TMerge and there are marked blocks
still left, ask what to do then.

Also I see a small problem here:
Assume you mark a changed block, then edit the content of that changed
block. How to handle this conflicting situation?
Also: if you edit the right view, then mark some blocks, then execute
the "use left file except marked blocks", those changes are lost.
How should we deal with this? Should we deal with this at all or just
rely on the Undo feature?

The method CBaseView::UseViewBlock() now copies the left file and leaves
all marked blocks as is. I suggest to negate that: use the original text
but copy the left lines for unmarked blocks. That way, if the user has
edited some unmodified lines these would be kept as well.

Thoughts?

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest interface to (Sub)version control
    /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=3074377
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2014-03-11 20:44:54 CET

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.