summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/git/README.md434
-rw-r--r--plugins/git/git.plugin.zsh29
2 files changed, 242 insertions, 221 deletions
diff --git a/plugins/git/README.md b/plugins/git/README.md
index 724965302..93dc8ccea 100644
--- a/plugins/git/README.md
+++ b/plugins/git/README.md
@@ -10,207 +10,205 @@ plugins=(... git)
## Aliases
-| Alias | Command |
-| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| `grt` | `cd "$(git rev-parse --show-toplevel \|\| echo .)"` |
-| `ggpnp` | `ggl && ggp` |
-| `ggpur` | `ggu` |
-| `g` | `git` |
-| `ga` | `git add` |
-| `gaa` | `git add --all` |
-| `gapa` | `git add --patch` |
-| `gau` | `git add --update` |
-| `gav` | `git add --verbose` |
-| `gwip` | `git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign --message "--wip-- [skip ci]"` |
-| `gam` | `git am` |
-| `gama` | `git am --abort` |
-| `gamc` | `git am --continue` |
-| `gamscp` | `git am --show-current-patch` |
-| `gams` | `git am --skip` |
-| `gap` | `git apply` |
-| `gapt` | `git apply --3way` |
-| `gbs` | `git bisect` |
-| `gbsb` | `git bisect bad` |
-| `gbsg` | `git bisect good` |
-| `gbsn` | `git bisect new` |
-| `gbso` | `git bisect old` |
-| `gbsr` | `git bisect reset` |
-| `gbss` | `git bisect start` |
-| `gbl` | `git blame -w` |
-| `gb` | `git branch` |
-| `gba` | `git branch --all` |
-| `gbd` | `git branch --delete` |
-| `gbD` | `git branch --delete --force` |
-| `gbgd` | `LANG=C git branch --no-color -vv \| grep ": gone\]" \| awk '"'"'{print $1}'"'"' \| xargs git branch -d` |
-| `gbgD` | `LANG=C git branch --no-color -vv \| grep ": gone\]" \| awk '"'"'{print $1}'"'"' \| xargs git branch -D` |
-| `gbm` | `git branch --move` |
-| `gbnm` | `git branch --no-merged` |
-| `gbr` | `git branch --remote` |
-| `ggsup` | `git branch --set-upstream-to=origin/$(git_current_branch)` |
-| `gbg` | `LANG=C git branch -vv \| grep ": gone\]"` |
-| `gco` | `git checkout` |
-| `gcor` | `git checkout --recurse-submodules` |
-| `gcb` | `git checkout -b` |
-| `gcd` | `git checkout $(git_develop_branch)` |
-| `gcm` | `git checkout $(git_main_branch)` |
-| `gcp` | `git cherry-pick` |
-| `gcpa` | `git cherry-pick --abort` |
-| `gcpc` | `git cherry-pick --continue` |
-| `gclean` | `git clean --interactive -d` |
-| `gcl` | `git clone --recurse-submodules` |
-| `gccd` | `git clone --recurse-submodules "$@" && cd "$(basename $\_ .git)"` |
-| `gcam` | `git commit --all --message` |
-| `gcas` | `git commit --all --signoff` |
-| `gcasm` | `git commit --all --signoff --message` |
-| `gcmsg` | `git commit --message` |
-| `gcsm` | `git commit --signoff --message` |
-| `gc` | `git commit --verbose` |
-| `gca` | `git commit --verbose --all` |
-| `gca!` | `git commit --verbose --all --amend` |
-| `gcan!` | `git commit --verbose --all --no-edit --amend` |
-| `gcans!` | `git commit --verbose --all --signoff --no-edit --amend` |
-| `gc!` | `git commit --verbose --amend` |
-| `gcn!` | `git commit --verbose --no-edit --amend` |
-| `gcs` | `git commit -S` |
-| `gcss` | `git commit -S -s` |
-| `gcssm` | `git commit -S -s -m` |
-| `gcf` | `git config --list` |
-| `gdct` | `git describe --tags $(git rev-list --tags --max-count=1)` |
-| `gd` | `git diff` |
-| `gdca` | `git diff --cached` |
-| `gdcw` | `git diff --cached --word-diff` |
-| `gds` | `git diff --staged` |
-| `gdw` | `git diff --word-diff` |
-| `gdv` | `git diff -w "$@" \| view -` |
-| `gdup` | `git diff @{upstream}` |
-| `gdnolock` | `git diff $@ ":(exclude)package-lock.json" ":(exclude)\*.lock"` |
-| `gdt` | `git diff-tree --no-commit-id --name-only -r` |
-| `gf` | `git fetch` |
-| `gfa` | `git fetch --all --prune` |
-| `gfo` | `git fetch origin` |
-| `gg` | `git gui citool` |
-| `gga` | `git gui citool --amend` |
-| `ghh` | `git help` |
-| `glgg` | `git log --graph` |
-| `glgga` | `git log --graph --decorate --all` |
-| `glgm` | `git log --graph --max-count=10` |
-| `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` |
-| `glol` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset'` |
-| `glola` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --all` |
-| `glols` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --stat` |
-| `glo` | `git log --oneline --decorate` |
-| `glog` | `git log --oneline --decorate --graph` |
-| `gloga` | `git log --oneline --decorate --graph --all` |
-| `glp` | `git log --pretty=<format>` |
-| `glg` | `git log --stat` |
-| `glgp` | `git log --stat --patch` |
-| `gignored` | `git ls-files -v \| grep "^[[:lower:]]"` |
-| `gfg` | `git ls-files \| grep` |
-| `gm` | `git merge` |
-| `gma` | `git merge --abort` |
-| `gms` | `git merge --squash` |
-| `gmom` | `git merge origin/$(git_main_branch)` |
-| `gmum` | `git merge upstream/$(git_main_branch)` |
-| `gmtl` | `git mergetool --no-prompt` |
-| `gmtlvim` | `git mergetool --no-prompt --tool=vimdiff` |
-| `gl` | `git pull` |
-| `gpr` | `git pull --rebase` |
-| `gup` | `git pull --rebase` |
-| `gupa` | `git pull --rebase --autostash` |
-| `gupav` | `git pull --rebase --autostash --verbose` |
-| `gupv` | `git pull --rebase --verbose` |
-| `ggu` | `git pull --rebase origin $(current_branch)` |
-| `gupom` | `git pull --rebase origin $(git_main_branch)` |
-| `gupomi` | `git pull --rebase=interactive origin $(git_main_branch)` |
-| `ggpull` | `git pull origin "$(git_current_branch)"` |
-| `ggl` | `git pull origin $(current_branch)` |
-| `gluc` | `git pull upstream $(git_current_branch)` |
-| `glum` | `git pull upstream $(git_main_branch)` |
-| `gp` | `git push` |
-| `gpd` | `git push --dry-run` |
-| `gpf!` | `git push --force` |
-| `ggf` | `git push --force origin $(current_branch)` |
-| `gpf` | On Git >= 2.30: `git push --force-with-lease --force-if-includes` |
-| `gpf` | On Git < 2.30: `git push --force-with-lease` |
-| `ggfl` | `git push --force-with-lease origin $(current_branch)` |
-| `gpsup` | `git push --set-upstream origin $(git_current_branch)` |
-| `gpsupf` | On Git >= 2.30: `git push --set-upstream origin $(git_current_branch) --force-with-lease --force-if-includes` |
-| `gpsupf` | On Git < 2.30: `git push --set-upstream origin $(git_current_branch) --force-with-lease` |
-| `gpv` | `git push --verbose` |
-| `gpoat` | `git push origin --all && git push origin --tags` |
-| `gpod` | `git push origin --delete` |
-| `ggpush` | `git push origin "$(git_current_branch)"` |
-| `ggp` | `git push origin $(current_branch)` |
-| `gpu` | `git push upstream` |
-| `grb` | `git rebase` |
-| `grba` | `git rebase --abort` |
-| `grbc` | `git rebase --continue` |
-| `grbi` | `git rebase --interactive` |
-| `grbo` | `git rebase --onto` |
-| `grbs` | `git rebase --skip` |
-| `grbd` | `git rebase $(git_develop_branch)` |
-| `grbm` | `git rebase $(git_main_branch)` |
-| `grbom` | `git rebase origin/$(git_main_branch)` |
-| `gr` | `git remote` |
-| `grv` | `git remote --verbose` |
-| `gra` | `git remote add` |
-| `grrm` | `git remote remove` |
-| `grmv` | `git remote rename` |
-| `grset` | `git remote set-url` |
-| `grup` | `git remote update` |
-| `grh` | `git reset` |
-| `gru` | `git reset --` |
-| `grhh` | `git reset --hard` |
-| `grhk` | `git reset --keep` |
-| `grhs` | `git reset --soft` |
-| `gpristine` | `git reset --hard && git clean -dffx` |
-| `groh` | `git reset origin/$(git_current_branch) --hard` |
-| `grs` | `git restore` |
-| `grss` | `git restore --source` |
-| `grst` | `git restore --staged` |
-| `gunwip` | `git rev-list --max-count=1 --format="%s" HEAD \| grep -q "--wip--" && git reset HEAD~1` |
-| `grev` | `git revert` |
-| `grm` | `git rm` |
-| `grmc` | `git rm --cached` |
-| `gcount` | `git shortlog --summary -n` |
-| `gsh` | `git show` |
-| `gsps` | `git show --pretty=short --show-signature` |
-| `gstall` | `git stash --all` |
-| `gstu` | `git stash --include-untracked` |
-| `gstaa` | `git stash apply` |
-| `gstc` | `git stash clear` |
-| `gstd` | `git stash drop` |
-| `gstl` | `git stash list` |
-| `gstp` | `git stash pop` |
-| `gsta` | On Git >= 2.13: `git stash push` |
-| `gsta` | On Git < 2.13: `git stash save` |
-| `gsts` | `git stash show --patch` |
-| `gst` | `git status` |
-| `gss` | `git status --short` |
-| `gsb` | `git status --short -b` |
-| `gsi` | `git submodule init` |
-| `gsu` | `git submodule update` |
-| `gsd` | `git svn dcommit` |
-| `git-svn-dcommit-push` | `git svn dcommit && git push github $(git_main_branch):svntrunk` |
-| `gsr` | `git svn rebase` |
-| `gsw` | `git switch` |
-| `gswc` | `git switch -c` |
-| `gswd` | `git switch $(git_develop_branch)` |
-| `gswm` | `git switch $(git_main_branch)` |
-| `gta` | `git tag --annotate` |
-| `gts` | `git tag -s` |
-| `gtv` | `git tag \| sort -V` |
-| `gignore` | `git update-index --assume-unchanged` |
-| `gunignore` | `git update-index --no-assume-unchanged` |
-| `gwch` | `git whatchanged -p --abbrev-commit --pretty=medium` |
-| `gwt` | `git worktree` |
-| `gwtls` | `git worktree list` |
-| `gwtmv` | `git worktree move` |
-| `gwtrm` | `git worktree remove` |
-| `gk` | `gitk --all --branches &!` |
-| `gke` | `gitk --all $(git log --walk-reflogs --pretty=%h) &!` |
-| `gtl` | `gtl(){ git tag --sort=-v:refname -n --list ${1}\* }; noglob gtl` |
+| Alias | Command |
+| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------ |
+| `grt` | `cd "$(git rev-parse --show-toplevel \|\| echo .)"` |
+| `ggpnp` | `ggl && ggp` |
+| `ggpur` | `ggu` |
+| `g` | `git` |
+| `ga` | `git add` |
+| `gaa` | `git add --all` |
+| `gapa` | `git add --patch` |
+| `gau` | `git add --update` |
+| `gav` | `git add --verbose` |
+| `gwip` | `git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign --message "--wip-- [skip ci]"` |
+| `gam` | `git am` |
+| `gama` | `git am --abort` |
+| `gamc` | `git am --continue` |
+| `gamscp` | `git am --show-current-patch` |
+| `gams` | `git am --skip` |
+| `gap` | `git apply` |
+| `gapt` | `git apply --3way` |
+| `gbs` | `git bisect` |
+| `gbsb` | `git bisect bad` |
+| `gbsg` | `git bisect good` |
+| `gbsn` | `git bisect new` |
+| `gbso` | `git bisect old` |
+| `gbsr` | `git bisect reset` |
+| `gbss` | `git bisect start` |
+| `gbl` | `git blame -w` |
+| `gb` | `git branch` |
+| `gba` | `git branch --all` |
+| `gbd` | `git branch --delete` |
+| `gbD` | `git branch --delete --force` |
+| `gbgd` | `LANG=C git branch --no-color -vv \| grep ": gone\]" \| awk '"'"'{print $1}'"'"' \| xargs git branch -d` |
+| `gbgD` | `LANG=C git branch --no-color -vv \| grep ": gone\]" \| awk '"'"'{print $1}'"'"' \| xargs git branch -D` |
+| `gbm` | `git branch --move` |
+| `gbnm` | `git branch --no-merged` |
+| `gbr` | `git branch --remote` |
+| `ggsup` | `git branch --set-upstream-to=origin/$(git_current_branch)` |
+| `gbg` | `LANG=C git branch -vv \| grep ": gone\]"` |
+| `gco` | `git checkout` |
+| `gcor` | `git checkout --recurse-submodules` |
+| `gcb` | `git checkout -b` |
+| `gcd` | `git checkout $(git_develop_branch)` |
+| `gcm` | `git checkout $(git_main_branch)` |
+| `gcp` | `git cherry-pick` |
+| `gcpa` | `git cherry-pick --abort` |
+| `gcpc` | `git cherry-pick --continue` |
+| `gclean` | `git clean --interactive -d` |
+| `gcl` | `git clone --recurse-submodules` |
+| `gccd` | `git clone --recurse-submodules "$@" && cd "$(basename $\_ .git)"` |
+| `gcam` | `git commit --all --message` |
+| `gcas` | `git commit --all --signoff` |
+| `gcasm` | `git commit --all --signoff --message` |
+| `gcmsg` | `git commit --message` |
+| `gcsm` | `git commit --signoff --message` |
+| `gc` | `git commit --verbose` |
+| `gca` | `git commit --verbose --all` |
+| `gca!` | `git commit --verbose --all --amend` |
+| `gcan!` | `git commit --verbose --all --no-edit --amend` |
+| `gcans!` | `git commit --verbose --all --signoff --no-edit --amend` |
+| `gc!` | `git commit --verbose --amend` |
+| `gcn!` | `git commit --verbose --no-edit --amend` |
+| `gcs` | `git commit -S` |
+| `gcss` | `git commit -S -s` |
+| `gcssm` | `git commit -S -s -m` |
+| `gcf` | `git config --list` |
+| `gdct` | `git describe --tags $(git rev-list --tags --max-count=1)` |
+| `gd` | `git diff` |
+| `gdca` | `git diff --cached` |
+| `gdcw` | `git diff --cached --word-diff` |
+| `gds` | `git diff --staged` |
+| `gdw` | `git diff --word-diff` |
+| `gdv` | `git diff -w "$@" \| view -` |
+| `gdup` | `git diff @{upstream}` |
+| `gdnolock` | `git diff $@ ":(exclude)package-lock.json" ":(exclude)\*.lock"` |
+| `gdt` | `git diff-tree --no-commit-id --name-only -r` |
+| `gf` | `git fetch` |
+| `gfa` | `git fetch --all --prune` |
+| `gfo` | `git fetch origin` |
+| `gg` | `git gui citool` |
+| `gga` | `git gui citool --amend` |
+| `ghh` | `git help` |
+| `glgg` | `git log --graph` |
+| `glgga` | `git log --graph --decorate --all` |
+| `glgm` | `git log --graph --max-count=10` |
+| `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` |
+| `glol` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset'` |
+| `glola` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --all` |
+| `glols` | `git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --stat` |
+| `glo` | `git log --oneline --decorate` |
+| `glog` | `git log --oneline --decorate --graph` |
+| `gloga` | `git log --oneline --decorate --graph --all` |
+| `glp` | `git log --pretty=<format>` |
+| `glg` | `git log --stat` |
+| `glgp` | `git log --stat --patch` |
+| `gignored` | `git ls-files -v \| grep "^[[:lower:]]"` |
+| `gfg` | `git ls-files \| grep` |
+| `gm` | `git merge` |
+| `gma` | `git merge --abort` |
+| `gms` | `git merge --squash` |
+| `gmom` | `git merge origin/$(git_main_branch)` |
+| `gmum` | `git merge upstream/$(git_main_branch)` |
+| `gmtl` | `git mergetool --no-prompt` |
+| `gmtlvim` | `git mergetool --no-prompt --tool=vimdiff` |
+| `gl` | `git pull` |
+| `gpr` | `git pull --rebase` |
+| `gprv` | `git pull --rebase -v` |
+| `gpra` | `git pull --rebase --autostash` |
+| `gprav` | `git pull --rebase --autostash -v` |
+| `gprom` | `git pull --rebase origin $(git_main_branch)` |
+| `gpromi` | `git pull --rebase=interactive origin $(git_main_branch)` |
+| `ggpull` | `git pull origin "$(git_current_branch)"` |
+| `ggl` | `git pull origin $(current_branch)` |
+| `gluc` | `git pull upstream $(git_current_branch)` |
+| `glum` | `git pull upstream $(git_main_branch)` |
+| `gp` | `git push` |
+| `gpd` | `git push --dry-run` |
+| `gpf!` | `git push --force` |
+| `ggf` | `git push --force origin $(current_branch)` |
+| `gpf` | On Git >= 2.30: `git push --force-with-lease --force-if-includes` |
+| `gpf` | On Git < 2.30: `git push --force-with-lease` |
+| `ggfl` | `git push --force-with-lease origin $(current_branch)` |
+| `gpsup` | `git push --set-upstream origin $(git_current_branch)` |
+| `gpsupf` | On Git >= 2.30: `git push --set-upstream origin $(git_current_branch) --force-with-lease --force-if-includes` |
+| `gpsupf` | On Git < 2.30: `git push --set-upstream origin $(git_current_branch) --force-with-lease` |
+| `gpv` | `git push --verbose` |
+| `gpoat` | `git push origin --all && git push origin --tags` |
+| `gpod` | `git push origin --delete` |
+| `ggpush` | `git push origin "$(git_current_branch)"` |
+| `ggp` | `git push origin $(current_branch)` |
+| `gpu` | `git push upstream` |
+| `grb` | `git rebase` |
+| `grba` | `git rebase --abort` |
+| `grbc` | `git rebase --continue` |
+| `grbi` | `git rebase --interactive` |
+| `grbo` | `git rebase --onto` |
+| `grbs` | `git rebase --skip` |
+| `grbd` | `git rebase $(git_develop_branch)` |
+| `grbm` | `git rebase $(git_main_branch)` |
+| `grbom` | `git rebase origin/$(git_main_branch)` |
+| `gr` | `git remote` |
+| `grv` | `git remote --verbose` |
+| `gra` | `git remote add` |
+| `grrm` | `git remote remove` |
+| `grmv` | `git remote rename` |
+| `grset` | `git remote set-url` |
+| `grup` | `git remote update` |
+| `grh` | `git reset` |
+| `gru` | `git reset --` |
+| `grhh` | `git reset --hard` |
+| `grhk` | `git reset --keep` |
+| `grhs` | `git reset --soft` |
+| `gpristine` | `git reset --hard && git clean -dffx` |
+| `groh` | `git reset origin/$(git_current_branch) --hard` |
+| `grs` | `git restore` |
+| `grss` | `git restore --source` |
+| `grst` | `git restore --staged` |
+| `gunwip` | `git rev-list --max-count=1 --format="%s" HEAD \| grep -q "--wip--" && git reset HEAD~1` |
+| `grev` | `git revert` |
+| `grm` | `git rm` |
+| `grmc` | `git rm --cached` |
+| `gcount` | `git shortlog --summary -n` |
+| `gsh` | `git show` |
+| `gsps` | `git show --pretty=short --show-signature` |
+| `gstall` | `git stash --all` |
+| `gstu` | `git stash --include-untracked` |
+| `gstaa` | `git stash apply` |
+| `gstc` | `git stash clear` |
+| `gstd` | `git stash drop` |
+| `gstl` | `git stash list` |
+| `gstp` | `git stash pop` |
+| `gsta` | On Git >= 2.13: `git stash push` |
+| `gsta` | On Git < 2.13: `git stash save` |
+| `gsts` | `git stash show --patch` |
+| `gst` | `git status` |
+| `gss` | `git status --short` |
+| `gsb` | `git status --short -b` |
+| `gsi` | `git submodule init` |
+| `gsu` | `git submodule update` |
+| `gsd` | `git svn dcommit` |
+| `git-svn-dcommit-push` | `git svn dcommit && git push github $(git_main_branch):svntrunk` |
+| `gsr` | `git svn rebase` |
+| `gsw` | `git switch` |
+| `gswc` | `git switch -c` |
+| `gswd` | `git switch $(git_develop_branch)` |
+| `gswm` | `git switch $(git_main_branch)` |
+| `gta` | `git tag --annotate` |
+| `gts` | `git tag -s` |
+| `gtv` | `git tag \| sort -V` |
+| `gignore` | `git update-index --assume-unchanged` |
+| `gunignore` | `git update-index --no-assume-unchanged` |
+| `gwch` | `git whatchanged -p --abbrev-commit --pretty=medium` |
+| `gwt` | `git worktree` |
+| `gwtls` | `git worktree list` |
+| `gwtmv` | `git worktree move` |
+| `gwtrm` | `git worktree remove` |
+| `gk` | `gitk --all --branches &!` |
+| `gke` | `gitk --all $(git log --walk-reflogs --pretty=%h) &!` |
+| `gtl` | `gtl(){ git tag --sort=-v:refname -n --list ${1}\* }; noglob gtl` |
### Main branch preference
@@ -224,19 +222,25 @@ branch exists. We do this via the function `git_main_branch`.
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 |
-| :------- | :----------------------------------------------------- | :-------------------------------------------------------- |
-| `gap` | `git add --patch` | New alias: `gapa`. |
-| `gcl` | `git config --list` | New alias: `gcf`. |
-| `gdc` | `git diff --cached` | New alias: `gdca`. |
-| `gdt` | `git difftool` | No replacement. |
-| `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.) |
-| `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`. |
-| `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`. |
-| `gwc` | `git whatchanged -p --abbrev-commit --pretty = medium` | New alias: `gwch`. |
+| Alias | Command | Modification |
+| :------- | :-------------------------------------------------------- | :-------------------------------------------------------- |
+| `gap` | `git add --patch` | New alias: `gapa`. |
+| `gcl` | `git config --list` | New alias: `gcf`. |
+| `gdc` | `git diff --cached` | New alias: `gdca`. |
+| `gdt` | `git difftool` | No replacement. |
+| `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.) |
+| `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`. |
+| `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`. |
+| `gwc` | `git whatchanged -p --abbrev-commit --pretty = medium` | New alias: `gwch`. |
+| `gup` | `git pull --rebase` | now alias `gpr` |
+| `gupv` | `git pull --rebase -v` | now alias `gprv` |
+| `gupa` | `git pull --rebase --autostash` | now alias `gpra` |
+| `gupav` | `git pull --rebase --autostash -v` | now alias `gprav` |
+| `gupom` | `git pull --rebase origin $(git_main_branch)` | now alias `gprom` |
+| `gupomi` | `git pull --rebase=interactive origin $(git_main_branch)` | now alias `gpromi` |
## Functions
@@ -250,7 +254,7 @@ receive further support.
| `git_develop_branch` | Returns the name of the “development” branch: `dev`, `devel`, `development` if they exist, `develop` otherwise. |
| `git_main_branch` | Returns the name of the main branch: `main` if it exists, `master` otherwise. |
| `grename <old> <new>` | Renames branch `<old>` to `<new>`, including on the origin remote. |
-| `gbda` | Deletes all merged branches |
+| `gbda` | Deletes all merged branches |
| `gbds` | Deletes all squash-merged branches (**Note: performance degrades with number of branches**) |
### Work in Progress (WIP)
diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh
index 48937cb83..5ec2bbe2b 100644
--- a/plugins/git/git.plugin.zsh
+++ b/plugins/git/git.plugin.zsh
@@ -246,12 +246,12 @@ alias gmom='git merge origin/$(git_main_branch)'
alias gmum='git merge upstream/$(git_main_branch)'
alias gmtl='git mergetool --no-prompt'
alias gmtlvim='git mergetool --no-prompt --tool=vimdiff'
+
alias gl='git pull'
alias gpr='git pull --rebase'
-alias gup='git pull --rebase'
-alias gupa='git pull --rebase --autostash'
-alias gupav='git pull --rebase --autostash --verbose'
-alias gupv='git pull --rebase --verbose'
+alias gprv='git pull --rebase -v'
+alias gpra='git pull --rebase --autostash'
+alias gprav='git pull --rebase --autostash -v'
function ggu() {
[[ "$#" != 1 ]] && local b="$(git_current_branch)"
@@ -259,8 +259,8 @@ function ggu() {
}
compdef _git ggu=git-checkout
-alias gupom='git pull --rebase origin $(git_main_branch)'
-alias gupomi='git pull --rebase=interactive origin $(git_main_branch)'
+alias gprom='git pull --rebase origin $(git_main_branch)'
+alias gpromi='git pull --rebase=interactive origin $(git_main_branch)'
alias ggpull='git pull origin "$(git_current_branch)"'
function ggl() {
@@ -388,3 +388,20 @@ alias gk='\gitk --all --branches &!'
alias gke='\gitk --all $(git log --walk-reflogs --pretty=%h) &!'
unset git_version
+
+# Logic for adding warnings on deprecated aliases
+local old_alias new_alias
+for old_alias new_alias (
+ # TODO(2023-10-19): remove deprecated `git pull --rebase` aliases
+ gup gpr
+ gupv gprv
+ gupa gpra
+ gupav gprav
+ gupom gprom
+ gupomi gpromi
+); do
+ aliases[$old_alias]="
+ print -Pu2 \"%F{yellow}[oh-my-zsh] '%F{red}${old_alias}%F{yellow}' is a deprecated alias, using '%F{green}${new_alias}%F{yellow}' instead.%f\"
+ $new_alias"
+done
+unset old_alias new_alias