On Mon, Jan 08, 2018 at 02:34:31PM +0000, Julian Foad wrote:
> > >    svn save            -> svn shelf-save
> > >    svn shelve          -> svn shelf-shelve
> > >    svn unshelve        -> svn shelf-unshelve
> > >    svn shelves         -> svn shelf-shelves
> > 
> > 
> > This naming doesn't make any sense to me. Using a word root in the same
> > command as both a noun and a verb runs counter to my notions of proper
> > grammar. It doesn't look right. The following would be better:
> > 
> >      shelf-save, shelf-restore, shelf-list, shelf-log, shelf-drop,
> > shelf-diff.[*]
> 
> Thanks for your thoughts.
> 
> You missed out the 'shelve' command (which is like 'save' but reverts the
> modifications) which is probably the most difficult one to accommodate. What
> do you propose for that? If you intend 'save' to include the revert then
> what do propose for the form that doesn't revert (that is, form that creates
> another save-point/check-point)?
> 
> I considered using the word 'restore'. It is fine in the context of
> 'shelf-restore' but because of considering aliases I went for 'unshelve' as
> the better one-word name, and let the two-word construction be ugly. I also
> considered 'svn unshelve' as an alias with 'svn shelf-restore' as the
> two-word form.
> 
> Similarly for 'shelves' vs. 'list', with an additional consideration here
> that 'svn list' is already a command with a different meaning, a meaning
> that could also usefully be applied to a shelf.

How about a combination of new subcommands for actions which
tranfer working copy state from/to the shelf (used frequently),
and just one subcommand with options for management of the
shelf itself (used less frequently), like:

        svn shelve
        svn unshelve
        svn shelf --list
        svn shelf --drop
        svn shelf --diff/--show

Reply via email to