From: Theodore Tso <tytso@mit.edu>
To: "Peter Valdemar Mørch (Lists)" <4ux6as402@sneakemail.com>
Cc: git@vger.kernel.org
Subject: Re: Considering teaching plumbing to users harmful
Date: Thu, 17 Jul 2008 08:55:36 -0400 [thread overview]
Message-ID: <20080717125536.GO2167@mit.edu> (raw)
In-Reply-To: <487EF519.5070902@sneakemail.com>
On Thu, Jul 17, 2008 at 09:30:33AM +0200, "Peter Valdemar Mørch (Lists)" wrote:
>
> As a total git newbie (5 days) coming from svn, I *am* bewildered. Even
> sticking to porcelain, it is a feature-rich new tool I have in my hands!
>
> I'm missing clarity about what is porcelain and what is plumbing. `git
> help` shows
The top-level man page has a listing of what is porcelain and what is
plumbing --- although there is some disagreement. Johannes was
complaining about people using git rev-parse in tutorials and saying
that there was no way that was porcelain, but in fact it is *not*
listed as plumbing in the git man page. So I don't think there is
really a strong black-and-white category, but rather a certain set of
shades of gray, as it were.
> Is this list exactly the list of porcelain commands? Then say so there.
> Neither `git help diff` nor `git help ls-tree` say whether they are
> porcelain or plumbing commands. `git help diff` mentions git-diff-index,
> which i suspect is plumbing. When I read a man page, it would be nice to
> know whether a command (either the topic of the page or another
> mentioned command) is intended as porcelain or not.
My personal long-standing complaint is that there are certain man
pages like "git log" where in order to see all of the options which it
can take, the man page for git-log redirects you to a man page for
plumbing. Great way to scare the users. :-)
Have you taken a look at the intro-level materials such as "Everyday
Git in 20 commands or so"[1], the git tutorial[2], the official "Git's
User Manual"[3], or the "Git-SVN crash course"[4]? Those are probably
the best place to begin --- and to basically treat the git man pages
as reference materials with a huge number of controls that you won't
use or need to use for a long time --- if ever. It's like the 10,000
features hidden inside Microsoft Office. The features are all
indispensable to *someone*, but everyone has a different set of the
100 features which they all *have* to have. (And of course, the 20 or
so features that everyone really uses. :-)
> All of this of course assumes that there is consensus and a clear
> distinction between what is porcelain and what is plumbing which I'm
> don't even know if there is.
I don't think so. It's like what the judge said about pornography ---
I know it when I see it. :-)
And note that there's nothing *wrong* with using plumbing commands.
It's just that from a pedagogical point of view, they might not
necessarily be the best place to start.
- Ted
[1] http://www.kernel.org/pub/software/scm/git/docs/everyday.html
[2] http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html
[3] http://www.kernel.org/pub/software/scm/git/docs/user-manual.html
[4] http://git.or.cz/course/svn.html
next prev parent reply other threads:[~2008-07-17 12:56 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-16 17:21 Considering teaching plumbing to users harmful Johannes Schindelin
2008-07-16 17:50 ` Jesper Eskilson
2008-07-16 18:14 ` Johannes Schindelin
2008-07-16 18:19 ` Jesper Eskilson
2008-07-16 18:27 ` Johannes Schindelin
2008-07-16 17:53 ` Avery Pennarun
2008-07-16 18:12 ` Johannes Schindelin
2008-07-16 18:35 ` Avery Pennarun
2008-07-16 20:13 ` Theodore Tso
2008-07-16 21:53 ` Daniel Barkalow
2008-07-17 11:18 ` David Kastrup
2008-07-17 15:52 ` Jakub Narebski
2008-07-17 16:05 ` David Kastrup
2008-07-17 16:18 ` Subversion's do-everything-via-copying paradigm ( was RE: Re: Considering teaching plumbing to users harmful) Craig L. Ching
2008-07-17 21:05 ` David Kastrup
2008-07-17 22:06 ` Craig L. Ching
2008-07-17 22:07 ` Avery Pennarun
2008-07-17 22:11 ` Junio C Hamano
2008-07-17 20:04 ` Considering teaching plumbing to users harmful Jakub Narebski
2008-07-17 20:12 ` Kevin Ballard
2008-07-17 20:26 ` Petr Baudis
2008-07-17 20:40 ` Kevin Ballard
2008-07-17 21:03 ` Jakub Narebski
2008-07-17 21:10 ` Kevin Ballard
2008-07-17 20:34 ` Jakub Narebski
2008-07-17 20:42 ` Kevin Ballard
2008-07-17 20:15 ` Kevin Ballard
2008-07-17 21:02 ` David Kastrup
2008-07-17 22:32 ` Robin Rosenberg
2008-07-18 7:41 ` Dmitry Potapov
2008-07-17 16:11 ` Subversion is actually not so simple (was RE: Considering teaching plumbing to users harmful) Craig L. Ching
2008-07-17 17:37 ` Jakub Narebski
2008-07-17 19:00 ` Considering teaching plumbing to users harmful Daniel Barkalow
2008-07-16 18:18 ` Junio C Hamano
2008-07-16 18:51 ` Avery Pennarun
2008-07-16 18:59 ` Petr Baudis
2008-07-16 19:22 ` Avery Pennarun
2008-07-16 19:09 ` Junio C Hamano
2008-07-16 19:29 ` Avery Pennarun
2008-07-16 19:34 ` Junio C Hamano
2008-07-16 19:46 ` Avery Pennarun
2008-07-16 20:12 ` Junio C Hamano
2008-07-16 22:32 ` Theodore Tso
2008-07-16 22:41 ` Junio C Hamano
2008-07-16 22:53 ` Sean Kelley
2008-07-16 23:17 ` Nigel Magnay
2008-07-17 3:21 ` Stephen Sinclair
2008-07-18 17:02 ` Ping Yin
2008-07-16 22:24 ` Dmitry Potapov
2008-07-16 22:28 ` Johannes Schindelin
2008-07-16 22:49 ` Theodore Tso
2008-07-17 0:25 ` Johannes Schindelin
2008-07-17 2:47 ` Theodore Tso
2008-07-17 14:21 ` Craig L. Ching
2008-07-17 14:51 ` Petr Baudis
2008-07-17 15:57 ` J. Bruce Fields
2008-07-16 21:16 ` david
2008-07-16 21:59 ` Dmitry Potapov
2008-07-16 20:23 ` Stephen R. van den Berg
2008-07-16 20:27 ` Nicolas Pitre
2008-07-16 20:51 ` Junio C Hamano
2008-07-16 23:05 ` Johannes Schindelin
2008-07-16 23:40 ` Junio C Hamano
2008-07-17 0:02 ` Johannes Schindelin
2008-07-17 6:53 ` Junio C Hamano
2008-07-17 15:55 ` J. Bruce Fields
2008-07-17 16:03 ` Karl Hasselström
2008-07-17 18:16 ` Johannes Schindelin
2008-07-17 18:29 ` Junio C Hamano
2008-07-17 18:43 ` Johannes Schindelin
2008-07-17 19:10 ` Junio C Hamano
2008-07-18 14:35 ` J. Bruce Fields
2008-07-18 9:55 ` Addremove equivalent [was: Re: Considering teaching plumbing to users harmful] Michael J Gruber
2008-07-18 20:18 ` Jay Soffian
2008-07-18 23:03 ` Johannes Schindelin
2008-07-20 3:27 ` Addremove equivalent Junio C Hamano
2008-07-20 3:28 ` [PATCH 1/2] builtin-add.c: restructure the code for maintainability Junio C Hamano
2008-07-20 3:29 ` [PATCH 2/2] git-add -a: add all files Junio C Hamano
2008-07-20 3:32 ` [PATCH 3/2] git-add -a: tests Junio C Hamano
2008-07-20 4:20 ` [PATCH 2/2] git-add -a: add all files Tarmigan
2008-07-20 4:28 ` Tarmigan
2008-07-20 10:56 ` Johannes Schindelin
2008-07-20 12:45 ` Jay Soffian
2008-07-20 18:30 ` Junio C Hamano
2008-07-20 20:46 ` Lars Noschinski
2008-07-20 23:59 ` Jeff King
2008-07-21 0:06 ` Junio C Hamano
2008-07-21 0:17 ` Jeff King
2008-07-21 0:22 ` Jeff King
2008-07-21 2:11 ` Jay Soffian
2008-07-20 20:34 ` Sverre Rabbelier
2008-07-16 21:48 ` Considering teaching plumbing to users harmful Dmitry Potapov
2008-07-16 23:19 ` Johannes Schindelin
2008-07-16 22:09 ` Stephan Beyer
2008-07-16 23:22 ` Johannes Schindelin
2008-07-17 1:01 ` Stephan Beyer
2008-07-17 7:30 ` "Peter Valdemar Mørch (Lists)"
2008-07-17 12:38 ` Dmitry Potapov
2008-07-17 12:55 ` Theodore Tso [this message]
2008-07-17 13:35 ` Peter Valdemar Mørch
2008-07-17 14:26 ` Theodore Tso
2008-07-17 16:38 ` Junio C Hamano
2008-07-18 8:19 ` Andreas Ericsson
2008-07-18 18:26 ` Jeff King
2008-07-18 10:14 ` Suggestion: doc restructuring [was: Re: Considering teaching plumbing to users harmful] Michael J Gruber
2008-07-18 18:26 ` Jon Loeliger
2008-07-18 18:52 ` Craig L. Ching
2008-07-18 19:50 ` Suggestion: doc restructuring Junio C Hamano
2008-07-19 1:19 ` Suggestion: doc restructuring [was: Re: Considering teaching plumbing to users harmful] Johannes Schindelin
2008-07-20 8:14 ` Suggestion: doc restructuring Junio C Hamano
2008-07-20 11:02 ` Johannes Schindelin
2008-07-21 6:41 ` Andreas Ericsson
2008-07-21 10:04 ` Johannes Schindelin
2008-07-21 16:22 ` Junio C Hamano
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=20080717125536.GO2167@mit.edu \
--to=tytso@mit.edu \
--cc=4ux6as402@sneakemail.com \
--cc=git@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.