Re: what are plumbing and porcelain
- From
Boyd Stephen Smith Jr. <bss@iguanasuicide.net>
- Date
- Jan 21, 2009, 05:50 UTC
- Message-ID
- <200901202350.15011.bss@iguanasuicide.net>
- In-Reply-To
- <20090121052741.GC6970@b2j>
On Tuesday 20 January 2009, bill lam <cbill.lam@gmail.com> wrote about 'what are plumbing and porcelain':
>Sorry for this idiot question, but I really don't know what they are >and why it is necessary to distinguish between them.
"plumbing" are the commands that do low-level operations. Generally, end-users won't have to use them much, if at all, but they are "fundamental" operations, upon which git is built. It's a term also used in other project some, with a similar meaning.
"porcelain" is a cute name for the end-user operations. They "cover" the plumbing to make it look and act "pretty". While some may be less useful to some users, they all are high-level operations that depend on the plumbing.
It's important to distinguish between them because we don't want the plumbing to get needlessly complex. They should be single-purpose commands and their options should be utilitarian in nature. Also, porcelain is meant to be used interactively, not in scripts, so the output or behavior might change a bit--but that is still kept to a minimum.
-- Boyd Stephen Smith Jr. ,= ,-_-. =. bss@iguanasuicide.net ((_/)o o(\_)) ICQ: 514984 YM/AIM: DaTwinkDaddy `-'(. .)`-' http://iguanasuicide.net/ \_/