• 3 Posts
  • 8 Comments
Joined 6 months ago
cake
Cake day: May 25th, 2026

help-circle

  • The man page sheds a bit of light, but basically it the stuff on top of the core git functionality.

    LOW-LEVEL COMMANDS (PLUMBING)
           Although Git includes its own porcelain layer, its low-level commands are sufficient to support development of alternative
           porcelains. Developers of such porcelains might start by reading about git-update-index(1) and git-read-tree(1).
    
           The interface (input, output, set of options and the semantics) to these low-level commands are meant to be a lot more stable
           than Porcelain level commands, because these commands are primarily for scripted use. The interface to Porcelain commands on the
           other hand are subject to change in order to improve the end user experience.
    

    Related, but not to be confused with the --porcelain option available for some git commands. Eg, from the man page for git status:

           --porcelain[=<version>]
               Give the output in an easy-to-parse format for scripts. This is similar to the short output, but will remain stable across
               Git versions and regardless of user configuration. See below for details.
    

    Like it says, if you’re doing any kind of scripting this will remove weird escape codes to make parsing the output easier.






  • Disclosure: I love git. I learned it along with vi and the GNU coreutils, etc, at my first job, so the roots run deep. When I think of programming, I think of git.

    That said, I can appreciate how it is unintuitive to people who don’t really grok it. It is an incredibly powerful tool, but you have to really learn it on its own terms. You’ll probably have to pick up a little graph theory, memorize a few kata to get yourself out of common problems (merge conflicts, interactive rebases, etc).

    I’m not sure how anything could replace it without also feeling lack-luster to people who are already good at git. Maybe we just need to keep adding more tooling and visualisation over top of it and let the power users at least be able to work at those lower levels if they choose to.

    I was going to say Git Butler looks like it might have been this, but taking a look at their page now and it seems like they’ve gone all-in on corporate sponsorships. :P