]> git.phdru.name Git - dotfiles.git/blobdiff - .gitconfig
.gitconfig: add push2all alias to push to all remotes
[dotfiles.git] / .gitconfig
index b3e81d7b57c30205123d0c285b47ee2d2843e0ac..7abcd3f3665c6299916e86e1ba88ce496e150a99 100644 (file)
@@ -1,12 +1,20 @@
 [alias]
+       alias = "!f() { [ $# = 2 ] && git config --global alias.\"$1\" \"$2\" && return 0 || echo \"Usage: git alias <new alias> <original command>\" >&2 && return 1; }; f"
+       aliases = !git config --get-regexp 'alias.*' | colrm 1 6 | sed 's/[ ]/ = /'
        b = branch
-       camend = commit --amend -C HEAD
+       branches = branch --all
+       cat = cat-file -p
+       dump = cat-file -p
+       file = cat-file -t
+       type = cat-file -t
+       camend = commit --amend --no-edit
        checkin = commit
        ci = commit
        co = checkout
        d = diff
        dc = diff --cached
        dshow = show --decorate
+       incoming = !git remote update --prune; git log ..@{upstream}
        l = log --decorate
        l1 = log --decorate --oneline
        l5 = log --decorate -5
        lr = log --decorate --reverse
        lr1 = log --decorate --reverse --oneline
        lr5 = log --decorate --reverse -5
+       null-merge = merge --strategy=ours
+       outgoing = log @{upstream}..
+       push2all = !git remote | xargs -I% -n1 git push %
+       remotes = remote -v
+       ri = "!f() { git rebase --interactive --autosquash --preserve-merges ${1:-\"@{upstream\\}\"}; }; f"
+       #root = !pwd
+       root = rev-parse --show-toplevel
        st = status --short
        stb = status --short --branch
+       tags = tag --list
        unstage = reset HEAD --
        wdiff = diff --word-diff
-       wshow = show --word-diff
+       wshow = show --word-diff --decorate
 
 [branch]
        autosetuprebase = always
 [color]
        ui = auto
 
-# Adapted from http://shallowsky.com/blog/programming/gitcolors.html
-# and http://www.ansdb.com/649-git-colors-for-light-background
-[color "branch"]
-#      -- default --
-#      current = green
-#      local = normal
-#      plain = normal
-#      remote = magenta
-#      -- light bg --
-       current = blue
-       local = normal
-       plain = normal
-       remote = magenta
-       upstream = normal
-[color "diff"]
-#      -- default --
-#      commit = bold yellow
-#      frag = cyan
-#      meta = cyan
-#      new = green
-#      old = magenta
-#      plain = normal
-#      whitespace = normal red
-#      -- light bg --
-       commit = normal bold
-       frag = cyan
-       meta = bold
-       new = blue
-       old = magenta
-       plain = normal
-       whitespace = normal red
-#[color "grep"]
-#      -- default --
-#      match = normal
-[color "decorate"]
-#      -- light bg --
-       HEAD = blue
-       tag = blue
-#[color "interactive"]
-#      -- default --
-#      error = normal
-#      header = normal
-#      help = normal
-#      prompt = normal
-[color "status"]
-#      -- default --
-#      added = cyan
-#      changed = magenta
-#      header = normal
-#      nobranch = red
-#      untracked = red
-#      updated = green
-#      -- light bg --
-       added = blue
-       changed = blue
-       header = normal
-       nobranch = red
-       untracked = red
-       updated = magenta
-
-[core]
-       pager = less -FRSXgimq
+[include]
+       path = ~/lib/config/git/light_bg
 
 [log]
        abbrevCommit = true
 # 3 way diffs
 #      cmd = vim -d \"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\" -c \"wincmd J\"
 
+[push]
+       default = simple
+
 [receive]
        denyNonFastForwards = true