For git
commands there is this distinction between \"plumbing\" and \"porcelain\" commands. How can I determine what would be classified as a
I think there is no straight line between commands.
Commands that you use from day to day are porcelain (think about status
, diff
, commit
...), less used commands, which give less formated outputs are plumbing (think about diff-index
, hash-object
or send-pack
).
You can have a full list of git commands using git help -a
. It's pretty easy to tell here which command belongs more to porcelain or plumbering.
Looking at the manual of git send-pack
you can see the following line
Usually you would want to use git push, which is a higher-level wrapper of this command, instead.
This is what's telling you that it more a plumbing command.