Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

138 lines (108 sloc) 4.223 kb
[user]
name = Rob Miller
email = rob@bigfish.co.uk
[core]
excludesfile = ~/.gitignore
quotepath = false
pager = less -x4
[color]
branch = auto
diff = auto
status = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow
frag = magenta
old = red
new = green
[color "status"]
added = yellow
changed = green
untracked = cyan
[alias]
st = status -sb
ci = commit
br = branch
co = checkout
df = diff --color-words
dc = diff --cached
lp = log -p --abbrev-commit --color-words
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
ls = log --stat --abbrev-commit
l = log --oneline --abbrev-commit
lg = log --abbrev-commit --decorate --show-linear-break
ds = diff --stat
rl = reflog --date=relative
branch-name = "!git rev-parse --abbrev-ref HEAD"
publish = "!git push -u origin $(git branch-name)"
unpublish = "!git push origin :$(git branch-name)"
recreate = "!f() { [[ -n $@ ]] && git checkout \"$@\" && git unpublish && git checkout master && git branch -D \"$@\" && git checkout -b \"$@\" && git publish; }; f"
recreate-staging = "!git recreate staging"
code-review = difftool origin/master...
log-merges = log --abbrev-commit --decorate --merges --first-parent
tag-review = "!f() { git commit --amend -m \"$(git log -1 --pretty=\"format:%s%n%n%b%n%nReviewed-by: $1\")\"; }; f"
merge-span = "!f() { echo $(git log -1 $2 --merges --pretty=format:%P | cut -d' ' -f1)$1$(git log -1 $2 --merges --pretty=format:%P | cut -d' ' -f2); }; f"
merge-log = "!git log `git merge-span .. $1`"
merge-diff = "!git diff `git merge-span ... $1`"
merge-difftool = "!git difftool `git merge-span ... $1`"
rebase-branch = "!git rebase -i `git merge-base master HEAD`"
unstage = reset HEAD
assume = update-index --assume-unchanged
unassume = update-index --no-assume-unchanged
assumed = "!git ls-files -v | grep ^h | cut -c 3-"
find-branch = "!git branch | cut -c 3- | selecta | xargs git checkout"
track-branch = "!git branch -r | cut -c 3- | selecta | xargs git checkout -t"
ours = "!f() { git co --ours $@ && git add $@; }; f"
theirs = "!f() { git co --theirs $@ && git add $@; }; f"
delete-merged-branches = "!git co master && git branch --merged | grep -v '\\*' | xargs -n 1 git branch -d"
dl = "!git lg -p -1"
diffc = diff --cached
oldest-ancestor = !zsh -c 'diff -u <(git rev-list --first-parent "${1:-master}") <(git rev-list --first-parent "${2:-HEAD}") | sed -ne \"s/^ //p\" | head -1' -
pusha = push --all
ctags = "!.git/hooks/ctags"
latest = for-each-ref --count=10 --sort=-committerdate --format='%(committerdate:short) %(refname:short)'
merge-feature = "!f() { BRANCH=$(git rev-parse --abbrev-ref HEAD); echo $BRANCH; git co master && git pull && git merge --no-ff $BRANCH && git push; }; f"
stage-feature = "!f() { BRANCH=$(git rev-parse --abbrev-ref HEAD); echo $BRANCH; git co staging && git pull && git merge --no-ff $BRANCH && git push; }; f"
g = grep --break --heading --line-number
# Show files ignored by git:
ign = ls-files -o -i --exclude-standard
switch = !legit switch \"$@\"
branches = !legit branches
sprout = !legit sprout \"$@\"
harvest = !legit harvest \"$@\"
sync = !legit sync \"$@\"
graft = !legit graft \"$@\"
conflicts = !git ls-files -u | cut -f 2 | sort -u
up-sub = "!f() { git submodule foreach 'git fetch origin --tags; git checkout master; git pull' && git pull && git submodule update --init --recursive; }; f"
[branch]
autosetupmerge = true
autosetuprebase = always
[push]
default = tracking
[diff]
tool = Kaleidoscope
[merge]
conflictstyle = diff3
summary = true
tool = Kaleidoscope
[mergetool]
keepBackup = true
prompt = false
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[difftool]
prompt = false
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
[init]
templatedir = ~/.git_template
[oh-my-zsh]
hide-status = 1
[grep]
extendRegexp = true
lineNumber = true
Jump to Line
Something went wrong with that request. Please try again.