You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.7 KiB
95 lines
2.7 KiB
# 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 gco='git checkout' |
|
compdef _git gco=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-remote |
|
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' |
|
|
|
# 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() { |
|
if [ ! -d .git ]; then return; fi |
|
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() { |
|
if [ ! -d .git ]; then return; fi |
|
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 ggpull='git pull origin $(current_branch)' |
|
compdef ggpull=git |
|
alias ggpush='git push origin $(current_branch)' |
|
compdef ggpush=git |
|
alias ggpnp='git pull origin $(current_branch) && git push origin $(current_branch)' |
|
compdef ggpnp=git
|
|
|