Subject: Re: [PATCH,RFC 1/2] Make the list of common commands more exclusive

From: Theodore Tso <[email-masked]>
Date: Mon, 12 Nov 2007 01:22:22 -0500

On Sun, Nov 11, 2007 at 06:21:44PM -0800, Junio C Hamano wrote:
> Theodore Ts'o <[email-masked]> writes:
> 
> > Remove apply, archive, cherry-pick, prune, revert, and show-branch, so
> > "git help" is less intimidating.
> >
> > Signed-off-by: "Theodore Ts'o" <[email-masked]>
> >
> > -apply
> > -archive
> > -prune
> > -revert
> > -show-branch
> 
> I am fine with this list, perhaps except apply.

I was borderline on apply, but given that people are familiar with
patch -p1, the only real advantage git-apply has is that automatically
deals with new files (which "git commit -a" or "git add -u" won't
automatically get).

What did you think about cherry-pick?  Was that omitted by accident?

> On the other hand, if you are shooting *really* for the absolute
> minimum set for the beginners, I would kill rm and possibly mv)
> in addition to your list:

Those did cross my mind as well.  :-)

> I have a bit of reservation about revert, but I'd imagine we
> could kill it, and also fetch, pull and push, if you are
> shooting for *real* beginners who work alone.  I think the only
> valid justification to drop "revert" from the list is to assume
> that the audience do not interact with the outside world, and
> dropping fetch/pull/push from the list is in line with that.

My mental model for git newbies is that they would probably be pulling
from upstream repositories (so I was tempted to remove git-init from
the common commands list), but they would rarely be cherry-picking or
reverting other people's changes.

They probably would be submitting changes back upstream using e-mail
before they learn how to publish their own repository, so commands I'd
be tempted to add would include git-format-patch, git-send-email, and
git-cherry.  But these commands are pretty complicated for beginners....

	     	       		    	   - Ted