Last active
December 23, 2015 21:28
-
-
Save noma4i/6696087 to your computer and use it in GitHub Desktop.
Git alias
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
# Aliases | |
alias g='git' | |
compdef g=git | |
alias gst='git status' | |
compdef _git gst=git-status | |
alias gl='git pull' | |
compdef _git gl=git-pull | |
alias gup='git pull --rebase' | |
compdef _git gup=git-fetch | |
alias gp='git push' | |
compdef _git gp=git-push | |
alias gd='git diff' | |
gdv() { git diff -w "$@" | view - } | |
compdef _git gdv=git-diff | |
alias gc='git commit -v' | |
compdef _git gc=git-commit | |
alias gca='git commit -v -a' | |
compdef _git gca=git-commit | |
alias co='git checkout' | |
compdef _git co=git-checkout | |
alias gcm='git checkout master' | |
alias gr='git remote' | |
compdef _git gr=git-remote | |
alias grv='git remote -v' | |
compdef _git grv=git-remote | |
alias grmv='git remote rename' | |
compdef _git grmv=git-remotem | |
alias grrm='git remote remove' | |
compdef _git grrm=git-remote | |
alias grset='git remote set-url' | |
compdef _git grset=git-remote | |
alias grup='git remote update' | |
compdef _git grset=git-remote | |
alias gb='git branch' | |
compdef _git gb=git-branch | |
alias gba='git branch -a' | |
compdef _git gba=git-branch | |
alias gcount='git shortlog -sn' | |
compdef gcount=git | |
alias gcl='git config --list' | |
alias gcp='git cherry-pick' | |
compdef _git gcp=git-cherry-pick | |
alias glg='git log --stat --max-count=5' | |
compdef _git glg=git-log | |
alias glgg='git log --graph --max-count=5' | |
compdef _git glgg=git-log | |
alias glgga='git log --graph --decorate --all' | |
compdef _git glgga=git-log | |
alias gss='git status -s' | |
compdef _git gss=git-status | |
alias ga='git add' | |
compdef _git ga=git-add | |
alias gm='git merge' | |
compdef _git gm=git-merge | |
alias grh='git reset HEAD' | |
alias grhh='git reset HEAD --hard' | |
alias gwc='git whatchanged -p --abbrev-commit --pretty=medium' | |
alias gf='git ls-files | grep' | |
alias gpoat='git push origin --all && git push origin --tags' | |
########### RAILS ################# | |
alias rserver='cd ~/bridge;rails s -p 3001' | |
alias rserver2='cd ~/bridge;./script/server -p 3001' | |
alias pry3='cd ~/bridge;pry' | |
# Will cd into the top of the current repository | |
# or submodule. | |
alias grt='cd $(git rev-parse --show-toplevel || echo ".")' | |
# Git and svn mix | |
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk' | |
compdef git-svn-dcommit-push=git | |
alias gsr='git svn rebase' | |
alias gsd='git svn dcommit' | |
# | |
# Will return the current branch name | |
# Usage example: git pull origin $(current_branch) | |
# | |
function current_branch() { | |
ref=$(git symbolic-ref HEAD 2> /dev/null) || \ | |
ref=$(git rev-parse --short HEAD 2> /dev/null) || return | |
echo ${ref#refs/heads/} | |
} | |
function current_repository() { | |
ref=$(git symbolic-ref HEAD 2> /dev/null) || \ | |
ref=$(git rev-parse --short HEAD 2> /dev/null) || return | |
echo $(git remote -v | cut -d':' -f 2) | |
} | |
# these aliases take advantage of the previous function | |
alias gpl='git pull origin $(current_branch)' | |
compdef gpl=git | |
alias gps='git push origin $(current_branch)' | |
compdef gps=git | |
alias gg='git pull origin $(current_branch) && git push origin $(current_branch)' | |
compdef gg=git |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment