git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Pitre <nico@cam.org>
To: Junio C Hamano <junkio@cox.net>
Cc: git@vger.kernel.org
Subject: Re: Documentation/git-commit.txt
Date: Sat, 09 Dec 2006 14:58:11 -0500 (EST)	[thread overview]
Message-ID: <Pine.LNX.4.64.0612091442470.2630@xanadu.home> (raw)
In-Reply-To: <7vpsatelvv.fsf@assigned-by-dhcp.cox.net>

On Fri, 8 Dec 2006, Junio C Hamano wrote:

> Nicolas Pitre <nico@cam.org> writes:
> 
> > Frankly I feel unconfortable with this.
> >
> > 1) too many examples.
> >
> > Yes, examples are good, but somehow there is something in the current 
> > text that make me feel they are not providing the clarification they 
> > should.  Dunno... I think I'd still push them after option list.
> 
> Hmmm.  I was merely trying to respond with recent requests on
> the list (might have been #git log) to make common usage
> examples more prominent.  While I feel that following the UNIXy
> manpage tradition to push examples down is the right thing to
> do, you and I are not the primary audience of Porcelain
> manpages, so...

Sure, but sometimes too much is just as bad as not enough.  And given 
the amount of text in your version I feel the essence of the information 
gets dilluted too much.

> > 2) explanation of how to resolve and commit a conflicting merge should 
> >    really be found in git-merge.txt not in git-commit.txt.
> >
> > It feels a bit awkward to suddenly start talking about git ls-files and 
> > merge here.
> 
> I agree that it looks a bit out of place; the primary reason I
> talked about the merge was to make it clear that a conflicted
> merge will still stage the changes for cleanly auto-resolved
> paths.  In other words, it makes me feel uneasy that there is no
> mention of it in the list in your version that follows this
> sentence:
> 
> > +... All changes
> > +to be committed must be explicitly identified using one of the following
> > +methods:
> 
> It would make me happier if you had, at the end of enumeration,
> something like:
> 
> 	Note that the contents of the paths that resolved
>         cleanly by a conflicted merge are automatically staged
>         for the next commit; you still need to explicitly
>         identify what you want in the resulting commit using one
>         of the above methods before concluding the merge.

But why couldn't this be in the git-merge man page instead?  That is 
precisely the sort of addition that makes me feel like we're trying to 
say too much at the same time.  When in the context of learning how 
"commit" works, it is certainly not necessary to talk about how "merge" 
works.  That should really be mentioned in the "merging" documentation 
(with a link to git-commit for more options on commit).

> Another reason I described the merge workflow is it would become
> much less clear why --only is useless in merge situation if the
> reader does not know that a conflicted merge stages the
> auto-resolved changes.

Sure, but the whole merge concept might still not make any sense at the 
moment the user is learning about commit.  In other words, the "commit" 
documentation must not depend on the "merge" concept.  It should rather 
be the other way around, i.e. the "merge" documentation can easily 
depend on the "commit" documentation.

Just like I carefully avoided talking about "commit -a" in the git-add 
man page to avoid circular conceptual dependencies.  But obviously the 
git-commit man page must talk about the "add" concept.

This way you get a progressive knowledge base with git-add which pretty 
much stands on its own, then you move to git-commit that depends on 
git-add, then you move to merging and resolving conflicts that depend on 
git-commit.  And so without being distracted by concepts you don't need 
to know just yet along the way.



  parent reply	other threads:[~2006-12-09 19:58 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-08 11:20 Documentation/git-commit.txt Junio C Hamano
2006-12-08 11:55 ` Documentation/git-commit.txt Salikh Zakirov
2006-12-08 19:31   ` Documentation/git-commit.txt Junio C Hamano
2006-12-08 19:45     ` Documentation/git-commit.txt Nicolas Pitre
2006-12-08 22:56   ` Documentation/git-commit.txt Alan Chandler
2006-12-10  0:11     ` Documentation/git-commit.txt Horst H. von Brand
2006-12-10  9:23       ` Documentation/git-commit.txt Alan Chandler
2006-12-11 14:58         ` Documentation/git-commit.txt Andreas Ericsson
2006-12-09  2:58 ` Documentation/git-commit.txt Nicolas Pitre
2006-12-09  4:25   ` Documentation/git-commit.txt Junio C Hamano
2006-12-09  4:42     ` Documentation/git-commit.txt J. Bruce Fields
2006-12-09 19:58     ` Nicolas Pitre [this message]
2006-12-09 20:49       ` Documentation/git-commit.txt Jakub Narebski
2006-12-09  5:48   ` [PATCH] Documentation/git-commit: rewrite to make it more end-user friendly Junio C Hamano
2006-12-09 21:15     ` Nicolas Pitre
2006-12-09 21:59       ` Junio C Hamano
2006-12-09 22:05         ` Jakub Narebski
2006-12-09 22:19           ` Linus Torvalds
2006-12-09 22:24             ` Jakub Narebski
2006-12-09 22:26         ` Nicolas Pitre
2006-12-10  0:30     ` Josef Weidendorfer
2006-12-10  0:51       ` Nicolas Pitre
2006-12-10 21:00       ` J. Bruce Fields
2006-12-10 22:07         ` Nicolas Pitre
2006-12-10 22:41           ` J. Bruce Fields
2006-12-10 23:05           ` Junio C Hamano
2006-12-10  9:17     ` Alan Chandler
2006-12-09  4:31 ` Documentation/git-commit.txt J. Bruce Fields

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.64.0612091442470.2630@xanadu.home \
    --to=nico@cam.org \
    --cc=git@vger.kernel.org \
    --cc=junkio@cox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).