Erin Call

Erin Call

You Can't Spell Engineering Without Erin

Posts tagged git

Signing Your Git Commits With GPG

Github has just announced GPG signature verification, which helps verify that commits made in someone's name were indeed made by that person. It's long been a dirty secret of git that you can impersonate anyone with minimal effort, so GPG verification adds a nice layer of assurance. Now that I've gone through the hassle of setting up automatic commit signatures, here's how you can do it too.

(Read the full post...)

Posted on 2016-04-05T18:15:00Z
Posted in git, pgp.

Git Helpers For The Fish Shell

I recently switched from Bash to the Fish Shell. It's great, but I missed the git helpers I got from SCM Breeze. Rather than sit around moping, I thought I'd implement the core feature in Fish.

(Read the full post...)

Posted on 2015-08-19T15:30:00Z
Posted in git, fish.

I Have Beef With How Git Push Is Taught

There's a particular detail in the workings of the @git push@ command that's almost always elided in tutorials. It's one of those details where you don't often need to exercise your knowledge of it, but you occasionally need to know it exists. If you don't know you don't know it, you can end up in a frustratingly confusing state.

Pretty much every git tutorial I've looked at makes a similar claim: "The syntax of this command is git push <remote> <branch>."

That's false! The syntax of the command is git push <remote> <local-ref>:<remote-branch>. You can omit some of the keywords, and their values will be inferred in various ways. And in fact, it's extremely common to omit the local-ref and colon, leaving the command looking the way tutorials claim it always looks.

(Read the full post...)

Posted on 2014-01-10T22:41:00Z
Posted in git.

Managing Multiple Identities In Git

When you use git at work and for personal projects, it's easy to mess up and make a commit using the wrong identity. You can end up with your work email attached to a commit for your personal work, or your personal email attached to your professional work. One solution is to simply isolate your code: only do your work programming on your work computer and only do your personal programming on your personal computer. That's not always practical, though. For example, you might find yourself wanting to do personal work while travelling with your work computer. In this post I'll show you how I manage that problem.

(Read the full post...)

Posted on 2012-12-31T00:02:00Z
Posted in git.