From: "Björn Steinbrink" <B.Steinbrink@gmx.de>
To: David Abrahams <dave@boostpro.com>
Cc: Jeff King <peff@peff.net>, Michael Witten <mfwitten@gmail.com>,
"J. Bruce Fields" <bfields@fieldses.org>,
git@vger.kernel.org
Subject: Re: [doc] User Manual Suggestion
Date: Mon, 27 Apr 2009 01:35:39 +0200 [thread overview]
Message-ID: <20090426233539.GC12338@atjola.homenet> (raw)
In-Reply-To: <78D97574-74AB-4A4D-AEB2-874BFBB4345E@boostpro.com>
On 2009.04.24 20:39:12 -0400, David Abrahams wrote:
>
> On Apr 24, 2009, at 6:45 PM, Björn Steinbrink wrote:
>
>>> I think UI/API works way better than porcelain/plumbing. We are,
>>> after all, programmers.
>>
>> We are programmers, but not all git users are programmers.
>
> I'm sure you will admit that the vast majority are programmers. This is
> about speaking effectively to your primary audience.
My experience says to at least drop the "vast", but that might be
biased, due to the fact that the non-programmers probably need more time
when you explain things to them.
But thinking about it again, I don't think I like UI/API regardless of
that. High-Level/Low-Level yes, but API? No. The plumbing is meant to be
stable so it can serve as an API, and it also has options that only make
sense when you use it that way (e.g. the parse-opt support in rev-parse)
but I also happen to just use those programs as a UI. For example
ls-files, ls-remote, or apply.
And git(1) also has the sections titled "HIGH-LEVEL COMMANDS
(PORCELAIN)" and "LOW_LEVEL COMMANDS (PLUMBING)". So if we were to get
rid of the porcelain and plumbing terms, then _I_ would go for just
"high-level commands" and "low-level commands".
>>> I should also say, most of the docs and interfaces I see in Git (and
>>> its wrappers, web interfaces, etc.) give the SHA1 hashes way too much
>>> exposure. The times when it's actually more convenient to use a hash
>>> instead of one of the other notations are rare,
>>
>> How often do you need a name for a commit shown by a command and can
>> accept that it is not stable?
>
> I can accept it as long as it's stable inside my own repo. Maybe I
> need the SHA1 to talk about it wherever it may roam. I think you
> could count in the other direction (i.e. from the roots instead of the
> leaves) to get fairly stable symbolic names.
I'm sure this has been discussed in the earlier "stable revision
numbers" threads as well, so you can find more information there, but I
just want to mention that one drawback of this is that those numbers
still have no notion of "commit age". You could have 5000 commits in
your repo, and then you fetch someone elses stuff that might have some
very old stuff that you don't have yet. And that gets high numbers now.
So 5051 might be older than 200. Doesn't exactly help to make those
numbers "useful". Just like the "gaps" you get by using e.g. rebase -i
or other means that cause commits to be garbage collected.
> Also, I don't think I need to see the hashes for trees and blobs most of
> the time.
OK, I think finally see what you might mean there. I'm almost
exclusively using the CLI and gitk and seldomly see tree/blob object
names in a prominent way unless I ask for them. But I just noticed that
gitweb is at least showing a "daunting" number of object names without
further details when you ask for a "commit", while the "commitdiff" is
closer to what "git show <commit>" would show. And yeah, I think that
could be improved, moving the object name more into the "background" (I
don't think it should be completely removed, just be less prominent).
Any other "high-level" tool that you noticed being noisy about tree/blob
hashes?
>>> Oh, one other specific issue: the rev-parse manpage uses $GIT_DIR
>>> without saying what it is. I *think* that means the root of the
>>> working copy and has nothing to do with environment variables, but
>>> it's hard to be sure, and if I'm right about that, it's misleading
>>> notation.
>>
>> $GIT_DIR means the .git directory of a non-bare repo.
>
>
> Thanks for clarifying. But don't neglect to fix the docs so the next
> guy doesn't have to ask ;-)
Hm, I provide the information, you provide the patch? ;-) Hm, maybe I'll
find some time to provide one myself. But my git and general todo lists
already grew beyond all limits...
> BTW, "[non-]bare repo" is yet another Git-specific jargon. I know what
> it means... again, only because I asked someone.
At least "bare repository" appears as an entry in the glossary
(gitglossary(7), also reachable via "git help glossary").
Björn
next prev parent reply other threads:[~2009-04-26 23:42 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-22 19:38 [doc] User Manual Suggestion David Abrahams
2009-04-23 17:57 ` J. Bruce Fields
2009-04-23 18:37 ` Michael Witten
2009-04-23 20:16 ` Jeff King
2009-04-23 20:45 ` Michael Witten
2009-04-23 21:31 ` David Abrahams
2009-04-24 0:31 ` Michael Witten
2009-04-24 14:18 ` Jeff King
2009-04-24 14:20 ` J. Bruce Fields
2009-04-24 17:28 ` David Abrahams
2009-04-24 18:15 ` Jeff King
2009-04-24 19:00 ` David Abrahams
2009-04-24 20:24 ` Jeff King
2009-04-24 21:06 ` David Abrahams
2009-04-24 22:45 ` Björn Steinbrink
2009-04-25 0:39 ` David Abrahams
2009-04-26 23:35 ` Björn Steinbrink [this message]
2009-04-24 14:11 ` Jeff King
2009-04-24 14:30 ` Michael Witten
2009-04-24 14:33 ` Michael Witten
2009-04-24 15:04 ` Jeff King
2009-04-24 15:18 ` Michael Witten
2009-04-24 17:38 ` J. Bruce Fields
2009-04-24 18:27 ` Jeff King
2009-04-24 18:35 ` J. Bruce Fields
[not found] ` <34BD51FF-0908-48A8-BBBC-E27B0EFB32E5@boostpro.com>
2009-04-24 18:52 ` J. Bruce Fields
2009-04-25 10:35 ` Felipe Contreras
2009-04-24 19:12 ` Michael Witten
2009-04-23 21:26 ` David Abrahams
2009-04-23 22:51 ` Johan Herland
2009-04-24 0:30 ` Michael Witten
2009-04-24 20:30 ` Johan Herland
2009-04-24 21:34 ` Daniel Barkalow
2009-04-24 21:38 ` Jeff King
2009-04-24 22:18 ` Michael Witten
2009-04-24 22:25 ` Michael Witten
2009-04-24 23:11 ` Daniel Barkalow
2009-04-24 23:14 ` Jeff King
2009-04-24 23:18 ` Michael Witten
2009-04-24 23:31 ` Michael Witten
2009-04-24 23:35 ` Jeff King
2009-04-25 0:19 ` Michael Witten
2009-04-25 10:18 ` Felipe Contreras
2009-04-24 23:26 ` Michael Witten
2009-04-25 18:55 ` Daniel Barkalow
2009-04-25 19:16 ` Michael Witten
2009-04-25 19:24 ` Felipe Contreras
2009-04-25 19:36 ` David Abrahams
2009-04-25 20:53 ` Felipe Contreras
2009-04-26 11:28 ` Björn Steinbrink
2009-04-26 13:55 ` David Abrahams
2009-04-26 17:56 ` Björn Steinbrink
2009-04-26 20:17 ` David Abrahams
2009-04-26 22:25 ` Björn Steinbrink
2009-04-27 1:41 ` David Abrahams
2009-04-27 16:30 ` David Abrahams
2009-04-27 16:52 ` Michael Witten
2009-04-26 16:36 ` Michael Witten
2009-04-26 18:12 ` Björn Steinbrink
2009-04-26 20:20 ` David Abrahams
2009-04-25 0:41 ` David Abrahams
2009-04-24 23:16 ` Björn Steinbrink
2009-04-25 0:01 ` Michael Witten
2009-04-25 0:48 ` David Abrahams
2009-04-26 22:42 ` Björn Steinbrink
2009-05-02 15:53 ` Björn Steinbrink
2009-05-02 18:36 ` Michael Witten
2009-05-02 21:11 ` Björn Steinbrink
2009-05-02 23:13 ` Michael Witten
2009-05-02 23:32 ` Björn Steinbrink
2009-05-03 1:10 ` Michael Witten
2009-05-03 1:48 ` Björn Steinbrink
2009-05-03 1:18 ` Mark Lodato
2009-05-03 1:26 ` Michael Witten
2009-04-24 23:21 ` Daniel Barkalow
2009-04-24 23:25 ` Jeff King
2009-04-26 23:41 ` Björn Steinbrink
2009-04-24 23:29 ` Michael Witten
2009-04-27 0:00 ` Björn Steinbrink
2009-04-25 0:19 ` David Abrahams
2009-04-25 0:26 ` Michael Witten
2009-04-25 0:35 ` Jeff King
2009-04-25 0:53 ` David Abrahams
2009-04-29 6:34 ` Jeff King
2009-04-29 13:27 ` David Abrahams
2009-04-29 14:05 ` Jeff King
2009-04-24 2:29 ` J. Bruce Fields
2009-04-24 2:34 ` Michael Witten
2009-04-24 4:06 ` David Abrahams
2009-04-24 14:10 ` 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=20090426233539.GC12338@atjola.homenet \
--to=b.steinbrink@gmx.de \
--cc=bfields@fieldses.org \
--cc=dave@boostpro.com \
--cc=git@vger.kernel.org \
--cc=mfwitten@gmail.com \
--cc=peff@peff.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).