summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorMarc Cornellà <marc@mcornella.com>2024-08-15 16:48:03 +0200
committerGitHub <noreply@github.com>2024-08-15 16:48:03 +0200
commitc13795d4c40fe075ec8b4450bb78b65ecf8108b2 (patch)
tree3ea473a550d1a8d6ee7eae0f918935b1f07b3547 /plugins
parentd26c4a276610445670fb71d415804625cebd7ccd (diff)
downloadzsh-c13795d4c40fe075ec8b4450bb78b65ecf8108b2.tar.gz
zsh-c13795d4c40fe075ec8b4450bb78b65ecf8108b2.tar.bz2
zsh-c13795d4c40fe075ec8b4450bb78b65ecf8108b2.zip
feat(git)!: ask for confirmation in `gpf` alias (#10169)
- Rename `git push --force-with-lease ...` to `gpff` - Add a y/n confirmation prompt to `gpf` before running `git push --force-with-lease ...` BREAKING CHANGE: this change adds a confirmation prompt to the `gpf` alias before running the potentially destructive `git push --force-with-lease` command. If you want to force-run the command without having to confirm it, run `gpff`.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/git/README.md8
-rw-r--r--plugins/git/git.plugin.zsh9
2 files changed, 11 insertions, 6 deletions
diff --git a/plugins/git/README.md b/plugins/git/README.md
index bcd9aca96..592840f87 100644
--- a/plugins/git/README.md
+++ b/plugins/git/README.md
@@ -89,7 +89,7 @@ plugins=(... git)
| `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 --tags --prune` |
+| `gfa` | `git fetch --all --tags --prune` |
| `gfo` | `git fetch origin` |
| `gg` | `git gui citool` |
| `gga` | `git gui citool --amend` |
@@ -133,8 +133,10 @@ plugins=(... git)
| `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` |
+| `gpf` | On Git >= 2.30: after confirmation, `git push --force-with-lease --force-if-includes` |
+| `gpf` | On Git < 2.30: after confirmation, `git push --force-with-lease` |
+| `gpff` | On Git >= 2.30: `git push --force-with-lease --force-if-includes` |
+| `gpff` | 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` |
diff --git a/plugins/git/git.plugin.zsh b/plugins/git/git.plugin.zsh
index 0a26399a2..99f640e88 100644
--- a/plugins/git/git.plugin.zsh
+++ b/plugins/git/git.plugin.zsh
@@ -297,10 +297,13 @@ function ggf() {
}
compdef _git ggf=git-checkout
-alias gpf!='git push --force'
+alias 'gpf!'='git push --force'
is-at-least 2.30 "$git_version" \
- && alias gpf='git push --force-with-lease --force-if-includes' \
- || alias gpf='git push --force-with-lease'
+ && alias gpf='read -k 1 -q "?Continue force-push? [y/N] " && echo && git push --force-with-lease --force-if-includes' \
+ || alias gpf='read -k 1 -q "?Continue force-push? [y/N] " && echo && git push --force-with-lease'
+is-at-least 2.30 "$git_version" \
+ && alias gpff='git push --force-with-lease --force-if-includes' \
+ || alias gpff='git push --force-with-lease'
function ggfl() {
[[ "$#" != 1 ]] && local b="$(git_current_branch)"