Skip to content

Instantly share code, notes, and snippets.

@wimleers
Created November 3, 2012 15:23
Show Gist options
  • Save wimleers/4007647 to your computer and use it in GitHub Desktop.
Save wimleers/4007647 to your computer and use it in GitHub Desktop.
[alias]
# View the SHA, description, and history graph of the latest 20 commits
l = log --pretty=oneline -n 10 --graph
# Better, prettier log view (including author and relative date)
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
# View the current working tree status using the short format
s = status -s
# Diff
d = diff --patch-with-stat
# Diff, inline
di = diff --patch-with-stat --color-words
# Diff staged
ds = diff --staged --patch-with-stat
# Diff staged, inline
dsi = diff --staged --patch-with-stat --color-words
# Pull in remote changes for the current repository and all its submodules
p = !"git pull; git submodule foreach git pull origin master"
# Clone a repository including all submodules
c = clone --recursive
# Shorthand for "commit"
ci = commit
# Commit all changes
ca = !git add . && git add -u && git commit -a
# Switch to a branch, creating it if necessary
go = checkout -B
# Undo a `git push`
undopush = push -f origin HEAD^:master
[apply]
# Detect whitespace errors when applying a patch
whitespace = fix
[core]
# Use custom `.gitignore` and `.gitattributes`
excludesfile = ~/.gitignore
attributesfile = ~/.gitattributes
# Treat spaces before tabs, and all kinds of trailing whitespace as an error
whitespace = space-before-tab,trailing-space
[color]
# Use colors in Git commands that are capable of colored output when outputting to the terminal
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
[merge]
# Include summaries of merged commits in newly created merge commit messages
log = true
# Use `origin` as the default remote on the `master` branch in all cases
[branch "master"]
remote = origin
merge = refs/heads/master
# URL shorthands
[url "git@github.com:"]
insteadOf = "gh:"
pushInsteadOf = "github:"
pushInsteadOf = "git://github.com/"
[url "git://github.com/"]
insteadOf = "github:"
[url "git@gist.github.com:"]
insteadOf = "gst:"
pushInsteadOf = "gist:"
pushInsteadOf = "git://gist.github.com/"
[url "git://gist.github.com/"]
insteadOf = "gist:"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment