Last active
December 31, 2015 17:53
-
-
Save mizanRahman/2a04b90683581d6c95cb to your computer and use it in GitHub Desktop.
My .gitconfig file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| alias ll="ls -lhA" | |
| alias sl="ls" | |
| alias lsl="ls -lhFA | less" | |
| alias cld="clear" | |
| alias cd..="cd .." | |
| alias fhere="find . -name " | |
| alias psg="ps aux | grep -v grep | grep -i -e VSZ -e" | |
| alias mkdir="mkdir -pv" | |
| alias md="mkdir -pv" | |
| mcd () { | |
| mkdir -p $1 | |
| cd $1 | |
| } | |
| function extract { | |
| if [ -z "$1" ]; then | |
| # display usage if no parameters given | |
| echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>" | |
| else | |
| if [ -f $1 ] ; then | |
| # NAME=${1%.*} | |
| # mkdir $NAME && cd $NAME | |
| case $1 in | |
| *.tar.bz2) tar xvjf ../$1 ;; | |
| *.tar.gz) tar xvzf ../$1 ;; | |
| *.tar.xz) tar xvJf ../$1 ;; | |
| *.lzma) unlzma ../$1 ;; | |
| *.bz2) bunzip2 ../$1 ;; | |
| *.rar) unrar x -ad ../$1 ;; | |
| *.gz) gunzip ../$1 ;; | |
| *.tar) tar xvf ../$1 ;; | |
| *.tbz2) tar xvjf ../$1 ;; | |
| *.tgz) tar xvzf ../$1 ;; | |
| *.zip) unzip ../$1 ;; | |
| *.Z) uncompress ../$1 ;; | |
| *.7z) 7z x ../$1 ;; | |
| *.xz) unxz ../$1 ;; | |
| *.exe) cabextract ../$1 ;; | |
| *) echo "extract: '$1' - unknown archive method" ;; | |
| esac | |
| else | |
| echo "$1 - file does not exist" | |
| fi | |
| fi | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [core] | |
| editor = /usr/bin/vim | |
| excludesfile = /Users/npaolucci/.gitignore_global | |
| pager=less -x4 | |
| [user] | |
| name = Mizan Rahman | |
| email = mizan.cse.buet@gmail.com | |
| [color] | |
| branch = auto | |
| diff = autogit | |
| status = auto | |
| [color "branch"] | |
| current = red reverse | |
| local = blue | |
| remote = green | |
| [color "diff"] | |
| meta = yellow | |
| frag = magenta | |
| old = red bold | |
| new = green | |
| plain = white | |
| [color "status"] | |
| added = yellow | |
| changed = green | |
| untracked = cyan | |
| [push] | |
| default = upstream | |
| [pull] | |
| default = current | |
| [diff] | |
| mnemonicprefix = true | |
| [branch] | |
| autosetuprebase = always | |
| [apply] | |
| whitespace = nowarn | |
| [alias] | |
| ## basic | |
| st = status -s | |
| cl = clone | |
| ci = commit | |
| co = checkout | |
| br = branch | |
| r = reset | |
| cp = cherry-pick | |
| gr = grep -Ii | |
| ## branch/diff | |
| diff = diff --word-diff | |
| branch = branch -ra | |
| grep = grep -Ii | |
| bra = branch -ra | |
| ai = add --interactive | |
| # grep on filename | |
| f = "!git ls-files | grep -i" | |
| ## commit | |
| cm = commit -m | |
| cma = commit -a -m | |
| ca = commit --amend | |
| amend = commit --amend | |
| caa = commit -a --amend -C HEAD | |
| ## log commands | |
| ls = log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative | |
| ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat | |
| lc = "!f() { git ll "$1"^.."$1"; }; f" | |
| lnc = log --pretty=format:"%h\\ %s\\ [%cn]" | |
| fl = log -u | |
| filelog = log -u | |
| # diff | |
| d = diff --word-diff | |
| dc = diff --cached | |
| # diff last commit | |
| dlc = diff --cached HEAD^ | |
| dr = "!f() { git diff -w "$1"^.."$1"; }; f" | |
| diffr = "!f() { git diff "$1"^.."$1"; }; f" | |
| # reset commands | |
| r1 = reset HEAD^ | |
| r2 = reset HEAD^^ | |
| rh = reset --hard | |
| rh1 = reset HEAD^ --hard | |
| rh2 = reset HEAD^^ --hard | |
| # stash | |
| sl = stash list | |
| sa = stash apply | |
| ss = stash save | |
| # assume aliases | |
| assume = update-index --assume-unchanged | |
| unassume = update-index --no-assume-unchanged | |
| # show assumed files | |
| assumed = "!git ls-files -v | grep ^h | cut -c 3-" | |
| # unassume all the assumed files | |
| unassumeall = "!git assumed | xargs git update-index --no-assume-unchanged" | |
| assumeall = "!git st -s | awk {'print $2'} | xargs git assume" | |
| # subtree | |
| # add | |
| sba = "!f() { git subtree add --prefix $2 $1 master --squash; }; f" | |
| # update/pull | |
| sbu = "!f() { git subtree pull --prefix $2 $1 master --squash; }; f" | |
| # various useful {{{ | |
| # last tag created | |
| lasttag = describe --tags --abbrev=0 | |
| lt = describe --tags --abbrev=0 | |
| # conflict/merges | |
| ours = "!f() { git co --ours $@ && git add $@; }; f" | |
| theirs = "!f() { git co --theirs $@ && git add $@; }; f" | |
| #list remotes | |
| rem="!git config -l | grep remote.*url | tail -n +2" | |
| #apply patch from other local repo | |
| lap = "!f() { git --git-dir=$1 format-patch -k -1 --stdout $2 | git am -3 -k; }; f" | |
| #open files edited in last commit | |
| last = "!gvim $(git show HEAD --format="" --name-only | xargs)" | |
| # initial empty commit | |
| empty = "!git commit -am\"[empty] Initial commit\" --allow-empty" | |
| # list all aliases | |
| la = "!git config -l | grep alias | cut -c 7-" | |
| # convoluted aliases | |
| # grep from root folder | |
| gra = "!f() { A=$(pwd) && TOPLEVEL=$(git rev-parse --show-toplevel) && cd $TOPLEVEL && git grep --full-name -In $1 | xargs -I{} echo $TOPLEVEL/{} && cd $A; }; f" | |
| #rename branch tree to done- | |
| done = "!f() { git branch | grep "$1" | cut -c 3- | grep -v done | xargs -I{} git branch -m {} done-{}; }; f" | |
| #add bitbucket remote | |
| ra = "!f() { git remote add $1 https://bitbucket.org/$2.git; }; f" | |
| [rerere] | |
| enabled = false | |
| [rebase] | |
| autosquash = true | |
| [filter "lob"] | |
| clean = "$GOPATH/bin/git-lob filter-clean %f" | |
| smudge = "$GOPATH/bin/git-lob filter-smudge %f" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment