git

Bailing out of an in-progress git merge

Git has a number of features that have been around for some time, yet many people seem unaware of. git merge --abort seems to fall into this category. It was introduced in version 1.7.4 (35d2fff), which was released January 30, 2011. Read More ›
development git tips

Updated git rebase --interactive --autosquash commit preparation

Previously I wrote about git rebase --interactive --autosquash, and showed a couple of helper aliases to aid in creating the specially formatted commit messages used by --autosquash.

In 1.7.4, Git gained built-in versions of these helpers (specifically in d71b8ba and 89ac122). It is now possible to use the commit command directly (or much more simple aliases) to create fixup and squash commits for use with --autosquash. Read More ›
development git tips

How I use different fetch & push URLs in Git

I hate having to enter my ssh key passphrase just to fetch from public Git repositories where I have push access. Fortunately, since version 1.6.4 Git has had the ability to separately specify the URLs to use when fetching, and when pushing. In addition to no longer requiring me to have my SSH key loaded when I go to fetch, I’ve noticed that fetching is now faster without the overhead of SSH. Read More ›
git

Using Git's @{-1} notation

There are a number of features Git has had for some time that go largely unnoticed by most people. Being able to refer to branches using the @{-1} notation (and its - alias) is one of the features I use on a regular basis that most people seem unaware of, even though they’ve been around since version 1.6.2. Read More ›
git

Using Git's @{upstream} notation

One useful feature Git has had since 1.7.0 is the ability to refer to the branch that another one is tracking using [branch]@{upstream} notation. I’ve found this especially handy while working on projects with multiple committers. Read More ›
git

Making 'git push' a little smarter/safer

Without any additional command line options git push’s behavior is almost never what I actually want it to do, since I rarely wish to push more than one branch at once, and often work with multiple remotes where I have push access.

Even though I am generally in the habit of always supplying both the remote and a list of refs when pushing (git push <remote> <ref1> [..<refN>]) I’d rather not have anything potentially dangerous or unwanted happen if I happen to leave off the ref(s) (or very rarely both the remote and the ref(s)). Read More ›
git

Making Git a little less verbose

Git has some output that can be very helpful to people getting started with it. Once you’ve been using Git for a while, however, you may find that the advice that Git provides to help deal with certain situations just ends up taking up screen real estate. Fortunately, there is a way to turn off a number of these messages. Read More ›
git

Colorizing Git output

There is a simple tweak to make working with Git a lot nicer that people often don’t know about, or forget to do is turn on Git’s ability to colorize its output. Read More ›
git

"Dear Jacob" Git advice: git add -u

I recently received a request that I start a “Dear Jacob” advice column for git, and thought that it was a pretty nifty idea. I needed a good excuse to post more frequently, and I do end up answering a lot of questions about Git for the people that I know.

Welcome to the first installment of the “Dear Jacob” Git advice column! Read More ›
git

Fun with the upcoming 1.7 release of Git: rebase --interactive --autosquash

The upcoming Git 1.7 has a lot of really nice improvements, and new features. One of the big new features is the --autosquash argument for git rebase --interactive. Read More ›
development git tips

Git + Lighthouse

This content is old, and possibly out of date.

I’ve been playing around with Git, CIA.vc, and Lighthouse on a project of mine that’s recently been resurrected.

There is a pretty good update hook for CIA.vc integration called ciabot.pl that I’ve been using, without any complaints. Unfortunately, I haven’t been able to find anything to integrate Git with Lighthouse that hasn’t needed modification out of the box. Read More ›
git hooks lighthouse