(fwd) bzr shelve feedback

Brad Bollenbach brad.bollenbach at gmail.com
Thu Nov 24 15:53:41 GMT 2005


On 24-Nov-05, at 9:19 AM, Aaron Bentley wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Meta-comment:
> If you want to discuss what bzr shelve/unshelve should be like, it  
> would
> be much better to post to the list.  The only bug I see is
> documentation.  The rest is in the eye of the beholder.

Is it reasonable to assume that a bzr user would be subscribed to and  
involved in the bzr mailing list?

I don't want to be a bzr expert (particularly not for the things that  
must be simple), I want it to Just Work.

Meanwhile though, I feel like I'm making my contribution by reporting  
in Malone what I think are bugs, based on what I bump into as a brand  
new bzr user.

> And since shelve/unshelve are part of the bzrtools plugin, not bzr,  
> it's
> not appropriate to file a bug against bzr.

Like most new bzr users, I have no idea about this distinction. :) To  
be honest, I'm not really interested in caring about this distinction  
either. (This reminds me of the time that we accidentally expected  
Launchpad users to distinguish "Soyuz" from "Launchpad" when filing  
bugs. :)

> Martin Pool wrote:
>
>>     1. Why is it called bzr shelve? I'm human, I'm very familiar with
>>     the idea of "undo/redo". "shelve", though it may align well to  
>> some
>>     dictionarily precise definition, does not fit the goal my brain
>>     formulates: I want to undo the changes I've made. Or I want to  
>> redo
>>     what I undid. Period.
>
> Unfortunately, there is no bzr tool that does what you described.
>
> "Undo", as implemented by virtually all applications, undoes the last
> operation performed.  So "bzr commit; bzr undo" would undo the commit.
> We don't support that yet, but I'd like to take a crack at it after  
> the
> stable release.

I used to use undo quite happily in baz. The fact that it's been  
removed from bzr makes it a bit hard not to complain.

I can live with learning a new word, if the interface helps me kick  
ass. The apparent equivalent, shelve, makes my life harder. I learn  
now that it's not actually the equivalent, but that doesn't stop us  
recent baz -> bzr converts from thinking of it that way when there's  
no other alternative (that I've found out about, in any case.)

At UBZ, I did get some nods from the bzr guys (you and mpool, IIRC)  
about renaming shelve to undo. :)

In slightly over a year of working on Malone, though I've used baz  
undo many times, I was never particularly bothered by not being able  
to pick things apart hunk by hunk.

>>     4. "Shelve these changes, or restart? [yrsiq?] (y)"
>>
>>     This question reads a bit to me like "Are you happy with these
>>     changes or do you want to erase you entire hard drive? [Yn]"
>
> This is a prompt to accept the current hunk selections

That much was clear to me, but the effect of "y" is about as clear to  
me as the example question I gave.

>>     I'm pretty confident that "y" is associated with "yes", but I  
>> find
>>     the wording of this question ambiguous. "Shelve these changes?
>>     [yrsiq?] (y)" would be an improvement, IMHO.
>
> Your options at that point are
>   ? - show help
>   y - proceed to shelve selected changes.
>   r - restart the hunk selection loop.
>   s - show status of hunks.
>   i - invert the current selection of all hunks.
>   q - quit

Yep, I inferred that hitting "?" shows me this. I just hoped the  
interface would be so simple that reading help wouldn't be necessary.

> I would say it's most important for the user to know that they can
> 1. continue
> 2. re-select their hunks

I'm only reporting the confusion this question fed me my first couple  
of times reading it.

I appreciate that your perspective on this question, as a baz/bzr  
implementor, is different. :)

Here's a second example of how I think that question might be made  
clearer:

    "Shelve these changes (y), or restart (r)? [yrsiq?] (y)"

Cheers,

--
Brad Bollenbach






More information about the bazaar mailing list