Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Oh My Zsh
Commits
e8609b85
Unverified
Commit
e8609b85
authored
Feb 19, 2020
by
Ujwal Dhakal
Committed by
GitHub
Feb 18, 2020
Browse files
git: add `grename` to rename a local branch and in the origin remote (#8622)
Co-authored-by:
Marc Cornellà
<
marc.cornella@live.com
>
parent
d49397a0
Changes
2
Hide whitespace changes
Inline
Side-by-side
plugins/git/README.md
View file @
e8609b85
...
@@ -10,195 +10,196 @@ plugins=(... git)
...
@@ -10,195 +10,196 @@ plugins=(... git)
## Aliases
## Aliases
| Alias | Command |
| Alias | Command
|
|:---------------------|:------------------------------------------------------------------------------------------------------------------------------|
|:---------------------|:------------------------------------------------------------------------------------------------------------------------------
---
|
| g | git |
| g | git
|
| ga | git add |
| ga | git add
|
| gaa | git add --all |
| gaa | git add --all
|
| gapa | git add --patch |
| gapa | git add --patch
|
| gau | git add --update |
| gau | git add --update
|
| gav | git add --verbose |
| gav | git add --verbose
|
| gap | git apply |
| gap | git apply
|
| gb | git branch |
| gb | git branch
|
| gba | git branch -a |
| gba | git branch -a
|
| gbd | git branch -d |
| gbd | git branch -d
|
| gbda | git branch --no-color --merged
\|
command grep -vE "^(
\+
|
\*\|\s
*(master\|develop\|dev)\s*
$)"
\|
command xargs -n 1 git branch -d |
| gbda | git branch --no-color --merged
\|
command grep -vE "^(
\+
|
\*\|\s
*(master\|develop\|dev)\s*
$)"
\|
command xargs -n 1 git branch -d |
| gbD | git branch -D |
| gbD | git branch -D
|
| gbl | git blame -b -w |
| gbl | git blame -b -w
|
| gbnm | git branch --no-merged |
| gbnm | git branch --no-merged
|
| gbr | git branch --remote |
| gbr | git branch --remote
|
| gbs | git bisect |
| gbs | git bisect
|
| gbsb | git bisect bad |
| gbsb | git bisect bad
|
| gbsg | git bisect good |
| gbsg | git bisect good
|
| gbsr | git bisect reset |
| gbsr | git bisect reset
|
| gbss | git bisect start |
| gbss | git bisect start
|
| gc | git commit -v |
| gc | git commit -v
|
| gc! | git commit -v --amend |
| gc! | git commit -v --amend
|
| gcn! | git commit -v --no-edit --amend |
| gcn! | git commit -v --no-edit --amend
|
| gca | git commit -v -a |
| gca | git commit -v -a
|
| gca! | git commit -v -a --amend |
| gca! | git commit -v -a --amend
|
| gcan! | git commit -v -a --no-edit --amend |
| gcan! | git commit -v -a --no-edit --amend
|
| gcans! | git commit -v -a -s --no-edit --amend |
| gcans! | git commit -v -a -s --no-edit --amend
|
| gcam | git commit -a -m |
| gcam | git commit -a -m
|
| gcsm | git commit -s -m |
| gcsm | git commit -s -m
|
| gcb | git checkout -b |
| gcb | git checkout -b
|
| gcf | git config --list |
| gcf | git config --list
|
| gcl | git clone --recurse-submodules |
| gcl | git clone --recurse-submodules
|
| gclean | git clean -id |
| gclean | git clean -id
|
| gpristine | git reset --hard && git clean -dfx |
| gpristine | git reset --hard && git clean -dfx
|
| gcm | git checkout master |
| gcm | git checkout master
|
| gcd | git checkout develop |
| gcd | git checkout develop
|
| gcmsg | git commit -m |
| gcmsg | git commit -m
|
| gco | git checkout |
| gco | git checkout
|
| gcount | git shortlog -sn |
| gcount | git shortlog -sn
|
| gcp | git cherry-pick |
| gcp | git cherry-pick
|
| gcpa | git cherry-pick --abort |
| gcpa | git cherry-pick --abort
|
| gcpc | git cherry-pick --continue |
| gcpc | git cherry-pick --continue
|
| gcs | git commit -S |
| gcs | git commit -S
|
| gd | git diff |
| gd | git diff
|
| gdca | git diff --cached |
| gdca | git diff --cached
|
| gdcw | git diff --cached --word-diff |
| gdcw | git diff --cached --word-diff
|
| gdct | git describe --tags $(git rev-list --tags --max-count=1) |
| gdct | git describe --tags $(git rev-list --tags --max-count=1)
|
| gds | git diff --staged |
| gds | git diff --staged
|
| gdt | git diff-tree --no-commit-id --name-only -r |
| gdt | git diff-tree --no-commit-id --name-only -r
|
| gdv | git diff -w $@
\|
view - |
| gdv | git diff -w $@
\|
view -
|
| gdw | git diff --word-diff |
| gdw | git diff --word-diff
|
| gf | git fetch |
| gf | git fetch
|
| gfa | git fetch --all --prune |
| gfa | git fetch --all --prune
|
| gfg | git ls-files
\|
grep |
| gfg | git ls-files
\|
grep
|
| gfo | git fetch origin |
| gfo | git fetch origin
|
| gg | git gui citool |
| gg | git gui citool
|
| gga | git gui citool --amend |
| gga | git gui citool --amend
|
| ggf | git push --force origin $(current_branch) |
| ggf | git push --force origin $(current_branch)
|
| ggfl | git push --force-with-lease origin $(current_branch) |
| ggfl | git push --force-with-lease origin $(current_branch)
|
| ggl | git pull origin $(current_branch) |
| ggl | git pull origin $(current_branch)
|
| ggp | git push origin $(current_branch) |
| ggp | git push origin $(current_branch)
|
| ggpnp | ggl && ggp |
| ggpnp | ggl && ggp
|
| ggpull | git pull origin "$(git_current_branch)" |
| ggpull | git pull origin "$(git_current_branch)"
|
| ggpur | ggu |
| ggpur | ggu
|
| ggpush | git push origin "$(git_current_branch)" |
| ggpush | git push origin "$(git_current_branch)"
|
| ggsup | git branch --set-upstream-to=origin/$(git_current_branch) |
| ggsup | git branch --set-upstream-to=origin/$(git_current_branch)
|
| ggu | git pull --rebase origin $(current_branch) |
| ggu | git pull --rebase origin $(current_branch)
|
| gpsup | git push --set-upstream origin $(git_current_branch) |
| gpsup | git push --set-upstream origin $(git_current_branch)
|
| ghh | git help |
| ghh | git help
|
| gignore | git update-index --assume-unchanged |
| gignore | git update-index --assume-unchanged
|
| gignored | git ls-files -v
\|
grep "^[[:lower:]]" |
| gignored | git ls-files -v
\|
grep "^[[:lower:]]"
|
| git-svn-dcommit-push | git svn dcommit && git push github master:svntrunk |
| git-svn-dcommit-push | git svn dcommit && git push github master:svntrunk
|
| gk | gitk --all --branches |
| gk | gitk --all --branches
|
| gke | gitk --all $(git log -g --pretty=%h) |
| gke | gitk --all $(git log -g --pretty=%h)
|
| gl | git pull |
| gl | git pull
|
| glg | git log --stat |
| glg | git log --stat
|
| glgp | git log --stat -p |
| glgp | git log --stat -p
|
| glgg | git log --graph |
| glgg | git log --graph
|
| glgga | git log --graph --decorate --all |
| glgga | git log --graph --decorate --all
|
| glgm | git log --graph --max-count=10 |
| glgm | git log --graph --max-count=10
|
| glo | git log --oneline --decorate |
| glo | git log --oneline --decorate
|
| glol | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset' |
| glol | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset'
|
| glols | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset' --stat |
| glols | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset' --stat
|
| glod | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)
<
%
an
>
%Creset' |
| glod | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)
<
%
an
>
%Creset'
|
| glods | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)
<
%
an
>
%Creset' --date=short |
| glods | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)
<
%
an
>
%Creset' --date=short
|
| glola | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset' --all |
| glola | git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)
<
%
an
>
%Creset' --all
|
| glog | git log --oneline --decorate --graph |
| glog | git log --oneline --decorate --graph
|
| gloga | git log --oneline --decorate --graph --all |
| gloga | git log --oneline --decorate --graph --all
|
| glp |
`_git_log_prettily`
|
| glp |
`_git_log_prettily`
|
| gm | git merge |
| gm | git merge
|
| gmom | git merge origin/master |
| gmom | git merge origin/master
|
| gmt | git mergetool --no-prompt |
| gmt | git mergetool --no-prompt
|
| gmtvim | git mergetool --no-prompt --tool=vimdiff |
| gmtvim | git mergetool --no-prompt --tool=vimdiff
|
| gmum | git merge upstream/master |
| gmum | git merge upstream/master
|
| gma | git merge --abort |
| gma | git merge --abort
|
| gp | git push |
| gp | git push
|
| gpd | git push --dry-run |
| gpd | git push --dry-run
|
| gpf | git push --force-with-lease |
| gpf | git push --force-with-lease
|
| gpf! | git push --force |
| gpf! | git push --force
|
| gpoat | git push origin --all && git push origin --tags |
| gpoat | git push origin --all && git push origin --tags
|
| gpu | git push upstream |
| gpu | git push upstream
|
| gpv | git push -v |
| gpv | git push -v
|
| gr | git remote |
| gr | git remote
|
| gra | git remote add |
| gra | git remote add
|
| grb | git rebase |
| grb | git rebase
|
| grba | git rebase --abort |
| grba | git rebase --abort
|
| grbc | git rebase --continue |
| grbc | git rebase --continue
|
| grbd | git rebase develop |
| grbd | git rebase develop
|
| grbi | git rebase -i |
| grbi | git rebase -i
|
| grbm | git rebase master |
| grbm | git rebase master
|
| grbs | git rebase --skip |
| grbs | git rebase --skip
|
| grev | git revert |
| grev | git revert
|
| grh | git reset |
| grh | git reset
|
| grhh | git reset --hard |
| grhh | git reset --hard
|
| groh | git reset origin/$(git_current_branch) --hard |
| groh | git reset origin/$(git_current_branch) --hard
|
| grm | git rm |
| grm | git rm
|
| grmc | git rm --cached |
| grmc | git rm --cached
|
| grmv | git remote rename |
| grmv | git remote rename
|
| grrm | git remote remove |
| grrm | git remote remove
|
| grs | git restore |
| grs | git restore
|
| grset | git remote set-url |
| grset | git remote set-url
|
| grss | git restore --source |
| grss | git restore --source
|
| grt | cd "$(git rev-parse --show-toplevel
\|\|
echo .)" |
| grt | cd "$(git rev-parse --show-toplevel
\|\|
echo .)"
|
| gru | git reset -- |
| gru | git reset --
|
| grup | git remote update |
| grup | git remote update
|
| grv | git remote -v |
| grv | git remote -v
|
| gsb | git status -sb |
| gsb | git status -sb
|
| gsd | git svn dcommit |
| gsd | git svn dcommit
|
| gsh | git show |
| gsh | git show
|
| gsi | git submodule init |
| gsi | git submodule init
|
| gsps | git show --pretty=short --show-signature |
| gsps | git show --pretty=short --show-signature
|
| gsr | git svn rebase |
| gsr | git svn rebase
|
| gss | git status -s |
| gss | git status -s
|
| gst | git status |
| gst | git status
|
| gsta | git stash push |
| gsta | git stash push
|
| gsta | git stash save |
| gsta | git stash save
|
| gstaa | git stash apply |
| gstaa | git stash apply
|
| gstc | git stash clear |
| gstc | git stash clear
|
| gstd | git stash drop |
| gstd | git stash drop
|
| gstl | git stash list |
| gstl | git stash list
|
| gstp | git stash pop |
| gstp | git stash pop
|
| gsts | git stash show --text |
| gsts | git stash show --text
|
| gstu | git stash --include-untracked |
| gstu | git stash --include-untracked
|
| gstall | git stash --all |
| gstall | git stash --all
|
| gsu | git submodule update |
| gsu | git submodule update
|
| gsw | git switch |
| gsw | git switch
|
| gswc | git switch -c |
| gswc | git switch -c
|
| gts | git tag -s |
| gts | git tag -s
|
| gtv | git tag
\|
sort -V |
| gtv | git tag
\|
sort -V
|
| gtl | gtl(){ git tag --sort=-v:refname -n -l ${1}
*
}; noglob gtl |
| gtl | gtl(){ git tag --sort=-v:refname -n -l ${1}
*
}; noglob gtl
|
| gunignore | git update-index --no-assume-unchanged |
| gunignore | git update-index --no-assume-unchanged
|
| gunwip | git log -n 1
\|
grep -q -c "
\-\-
wip
\-\-
" && git reset HEAD~1 |
| gunwip | git log -n 1
\|
grep -q -c "
\-\-
wip
\-\-
" && git reset HEAD~1
|
| gup | git pull --rebase |
| gup | git pull --rebase
|
| gupv | git pull --rebase -v |
| gupv | git pull --rebase -v
|
| gupa | git pull --rebase --autostash |
| gupa | git pull --rebase --autostash
|
| gupav | git pull --rebase --autostash -v |
| gupav | git pull --rebase --autostash -v
|
| glum | git pull upstream master |
| glum | git pull upstream master
|
| gwch | git whatchanged -p --abbrev-commit --pretty=medium |
| gwch | git whatchanged -p --abbrev-commit --pretty=medium
|
| gwip | git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign -m "--wip-- [skip ci]" |
| gwip | git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign -m "--wip-- [skip ci]"
|
### Deprecated
### Deprecated
These are aliases that have been removed, renamed, or otherwise modified in a way that may, or may not, receive further support.
These are aliases that have been removed, renamed, or otherwise modified in a way that may, or may not, receive further support.
| Alias |
Command
|
Modification
|
| Alias | Command
|
Modification |
| :----- | :-----------------------------------------------------
-----------------------------| ----------------------------------------------
----------------------------------------------------- |
| :----- | :-----------------------------------------------------
| :
----------------------------------------------------- |
| gap | git add --patch
| new alias
`gapa`
|
| gap |
`
git add --patch
`
| new alias
`gapa`
|
| gcl | git config --list
| new alias
`gcf`
|
| gcl |
`
git config --list
`
| new alias
`gcf`
|
| gdc | git diff --cached
| new alias
`gdca`
|
| gdc |
`
git diff --cached
`
| new alias
`gdca`
|
| gdt | git difftool
| no replacement
|
| gdt |
`
git difftool
`
| no replacement |
| ggpull | git pull origin $(current_branch)
| new alias
`ggl`
(
`ggpull`
still exists for now though)
|
| ggpull |
`
git pull origin $(current_branch)
`
| new alias
`ggl`
(
`ggpull`
still exists for now though) |
| ggpur | git pull --rebase origin $(current_branch)
| new alias
`ggu`
(
`ggpur`
still exists for now though)
|
| ggpur |
`
git pull --rebase origin $(current_branch)
`
| new alias
`ggu`
(
`ggpur`
still exists for now though) |
| ggpush | git push origin $(current_branch)
| new alias
`ggp`
(
`ggpush`
still exists for now though)
|
| ggpush |
`
git push origin $(current_branch)
`
| new alias
`ggp`
(
`ggpush`
still exists for now though) |
| gk | gitk --all --branches
| now aliased to
`gitk --all --branches`
|
| gk |
`
gitk --all --branches
`
| now aliased to
`gitk --all --branches`
|
| glg | git log --stat --max-count = 10
| now aliased to
`git log --stat --color`
|
| glg |
`
git log --stat --max-count = 10
`
| now aliased to
`git log --stat --color`
|
| glgg | git log --graph --max-count = 10
| now aliased to
`git log --graph --color`
|
| glgg |
`
git log --graph --max-count = 10
`
| now aliased to
`git log --graph --color`
|
| gwc | git whatchanged -p --abbrev-commit --pretty = medium
| new alias
`gwch`
|
| gwc |
`
git whatchanged -p --abbrev-commit --pretty = medium
`
| new alias
`gwch`
|
## Functions
## Functions
### Current
### Current
| Command | Description |
| Command | Description |
|:-----------------------|:----------------------------------------|
|:-----------------------|:---------------------------------------------------------|
| current_branch | Return the name of the current branch |
|
`grename <old> <new>`
| Rename
`old`
branch to
`new`
, including in origin remote |
| git_current_user_name | Returns the
`user.name`
config value |
| current_branch | Return the name of the current branch |
| git_current_user_email | Returns the
`user.email`
config value |
| git_current_user_name | Returns the
`user.name`
config value |
| git_current_user_email | Returns the
`user.email`
config value |
### Work in Progress (WIP)
### Work in Progress (WIP)
...
...
plugins/git/git.plugin.zsh
View file @
e8609b85
...
@@ -256,3 +256,17 @@ alias glum='git pull upstream master'
...
@@ -256,3 +256,17 @@ alias glum='git pull upstream master'
alias
gwch
=
'git whatchanged -p --abbrev-commit --pretty=medium'
alias
gwch
=
'git whatchanged -p --abbrev-commit --pretty=medium'
alias
gwip
=
'git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign -m "--wip-- [skip ci]"'
alias
gwip
=
'git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign -m "--wip-- [skip ci]"'
function
grename
()
{
if
[[
-z
"
$1
"
||
-z
"
$2
"
]]
;
then
echo
"Usage:
$0
old_branch new_branch"
return
1
fi
# Rename branch locally
git branch
-m
"
$1
"
"
$2
"
# Rename branch in origin remote
if
git push origin :
"
$1
"
;
then
git push
--set-upstream
origin
"
$2
"
fi
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment