/configuration/dot-gitconfig
http://github.com/matthewmccullough/git-workshop · #! · 200 lines · 186 code · 14 blank · 0 comment · 0 complexity · 205615e699f906d65131ffa961409e88 MD5 · raw file
- [user]
- name = Your Name Goes Here
- email = yourname@yourcompany.com
- [color]
- # ui = true is a superset of all the more specific color options
- # as documented at http://book.git-scm.com/5_customizing_git.html
- # When set to always, always use colors in all git commands which are capable of colored output.
- # When false, never. When set to true or auto, use colors only when the output is to the terminal.
- # When more specific variables of color.* are set, they always take precedence over this setting.
- # Defaults to false.
- ui = auto
- # diff = auto
- # status = auto
- # branch = 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
- [gui]
- fontdiff = -family Monaco -size 10 -weight normal -slant roman -underline 0 -overstrike 0
- recentrepo = /Users/mccm06/Documents/Temp/Scratch/hello/hgw1
- [core]
- excludesfile = ~/.gitignore
- quotepath = false
- autocrlf = input
- safecrlf = warn
- editor = mate -w
- [alias]
- br = branch -a
- s = status -s -u
- cl = log --stat -C -2
- c = commit
- co = checkout
- d = diff --color-words
- dh = diff HEAD
- dc = diff --staged
- dw = diff --word-diff
- dcw = diff --color-words
- dm = !git diff | mate
- dv = !git diff | vim
- who = shortlog -s --
- ph = push
- pl = pull
- lp = log -p
- lod = log --oneline --decorate
- lg = log --graph
- lpo = log --pretty=oneline --abbrev-commit --graph --decorate --all
- l1 = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
- l2 = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
- spull = !git-svn fetch && git-svn rebase
- spush = !git-svn dcommit
- sync = !git pull && git push
- es = !git pull --rebase && git push
- lf = log --pretty=fuller
- ignorechanges = update-index --assume-unchanged
- noticechanges = update-index --no-assume-unchanged
- gc-ap = gc --aggressive --prune
- listconf = config --global --list
- cam = commit -a -m
- lsm = log -M --stat
- hse = log --stat -5
- diffall = diff HEAD
- logr = log -M
- logr2 = log --stat -M -2
- logit = log --stat -M
- scrub = !git reset --hard && git clean -fd
- pub = !git pub checkout master && git pull && git checkout dev && git rebase master && git checkout master && git merge dev && git wtf
- cs = status
- rv = remote -v
- lwr = log --stat -C
- pur = pull --rebase
- whatis = show -s --pretty='tformat:%h (%s, %ad)' --date=short
- orphank = !gitk --all `git reflog | cut -c1-7`&
- orphanl = !git --pretty=oneline --abbrev-commit --graph --decorate `git reflog | cut -c1-7`
- k = !exec gitk --all&
- testecho1 = !sh -c 'echo with slash: zero=$0 one=$1 two=$2' -
- # te1 RESULT: with slash: zero=- one=A two=B
- testecho2 = !sh -c 'echo without slash: zero=$0 one=$1 two=$2'
- # te2 RESULT: without slash: zero=A one=B two=C
- st = status
- l = log --stat -C
- ll = log --stat -C -3
- servehere = daemon --verbose --informative-errors --reuseaddr --export-all --base-path=. --enable=receive-pack
- servedotgits = !git daemon --verbose --reuseaddr --base-path=. --export-all ./.git
- purgeme = !git clean -fd && git reset --hard
- prunenow = gc --prune=now
- ri = rebase --interactive --autosquash
- lol = log --pretty=oneline --abbrev-commit
- blg = log --graph --decorate --all --abbrev-commit --pretty=oneline
- slog = log --graph --simplify-by-decoration --all --abbrev-commit --pretty=oneline
- lgso = log --graph --date=short --pretty=format:'%C(yellow)%h%Creset %cn%x09%cd %s%C(green bold)%d'
- ro = !git fetch origin && git reset --hard origin/master
- shorten = "!sh -c 'curl -i http://git.io -F url=$1' -"
- pushnotes = !sh -c 'git push $1 refs/notes/*' -
- fetchnotes = !sh -c 'git fetch $1 refs/notes/*:refs/notes/*' -
- showignored = clean -ndX
- showignored2 = ls-files --others --ignored --exclude-standard
- showuntracked = ls-files --others --exclude-standard
- rmmissing = !git rm $(git ls-files --deleted)
- mergekeepoursonly = merge -s ours
- redocommit = reset --soft HEAD^
- listunstaged = diff --name-status
- liststaged = diff --name-status --staged
- listhistory = log --name-status
- logn = log --oneline --name-only
- busypeople = shortlog -6
- busythisweek = shortlog --since=one.week.ago
- configpushtracking = config push.default tracking
- configpushnothing = config push.default nothing
- configpushtracking = config push.default matching
- configpushcurrent = config push.default current
- sizes = "!for eachthing in `git rev-list HEAD --all`; do echo `git cat-file -s $eachthing` $eachthing ; done"
- emptytree = hash-object -t tree /dev/null
- diffemptytreehash = diff -p 4b825dc642cb6eb9a060e54bf8d69288fbee4904
- listfetchedcommits = log ORIG_HEAD.. --stat --no-merges
- llog = log --date=local
- diffnamestatus = diff --name-status
- diffstat=diff --stat
- whatsjusthappened = !sh -c 'git log $1@{1}..$1@{0} "$@"'
- editconflicted = "!f() { git ls-files --unmerged | cut -f2 | sort -u ; }; $EDITOR `f`"
- addconflicted = "!f() { git ls-files --unmerged | cut -f2 | sort -u ; }; git add `f`"
- # Other alias ideas that don't quite work yet
- #testnewrepodoesntwork1 = !echo git init $1 && echo cd $1
- #testnewrepodoesntwork2 = !sh -c 'git init $1; echo hi' -
- #testnewrepodoesntwork3 = "!f() { git init $1}; f"
- nr = "!sh -c 'git init $0'"
- echoparam1 = "!sh -c 'echo $0'"
- #testshfunction = "!function gitme() { git init $1; cd $1; }; gitme"
-
- fixup = "!sh -c 'git commit -m \"fixup! $(git log -1 --format='\\''%s'\\'' $@)\"' -"
- squash = "!sh -c 'git commit -m \"squash! $(git log -1 --format='\\''%s'\\'' $@)\"' -"
- ccfq = "!sh -c 'git add $1 && git commit -m\"Placeholder\"' -"
- bbnl = log --graph --abbrev-commit --decorate --all --pretty=oneline
- bbnclean = clean -ndX
- [apply]
- whitespace = nowarn
- [rerere]
- enabled = 1
- [diff]
- tool = araxis
- [difftool]
- prompt = false
- #[difftool "myaraxis"]
- # cmd = araxisgitdiff ONE $LOCAL THREE FOUR $REMOTE
- [merge]
- tool = araxis
- [mergetool]
- prompt = false
- keepBackup = false
- #[mergetool "myaraxis"]
- # cmd = araxisgitmerge $PWD/$REMOTE $PWD/$BASE $PWD/$LOCAL $PWD/$MERGED
- [branch]
- # Automatically set up pull to be --rebase
- # autosetuprebase = always
- [github]
- # https://github.com/blog/180-local-github-config
- user = yourgithubusername
- token = yourgithubtoken
- [url "git://github.com/"]
- insteadOf = "ghg://"
- pushInsteadOf = "ghg://"
- # Example: git clone ghg://ntschutta/emacs
- [url "git://github.com/matthewmccullough/"]
- insteadOf = "ghgm://"
- pushInsteadOf = "ghgm://"
- # Example: git clone ghgm://hellogitworld
- [url "git@github.com:"]
- insteadOf = "ghs://"
- pushInsteadOf = "ghs://"
- [url "git@github.com:matthewmccullough/"]
- insteadOf = "ghsm://"
- pushInsteadOf = "ghsm://"
- [url "https://github.com/"]
- insteadOf = "ghh://"
- pushInsteadOf = "ghh://"
- [url "https://github.com/matthewmccullough/"]
- insteadOf = "ghhm://"
- pushInsteadOf = "ghhm://"