Unverified Commit 115cee17 authored by Ihor's avatar Ihor Committed by GitHub

feat(git): add `gunwipall` function (#11725)

parent d1c64bfd
...@@ -254,6 +254,7 @@ These features allow to pause a branch development and switch to another one (_" ...@@ -254,6 +254,7 @@ These features allow to pause a branch development and switch to another one (_"
| work_in_progress | Echoes a warning if the current branch is a wip | | work_in_progress | Echoes a warning if the current branch is a wip |
| gwip | Commit wip branch | | gwip | Commit wip branch |
| gunwip | Uncommit wip branch | | gunwip | Uncommit wip branch |
| gunwipall | Uncommit `--wip--` commits recursively |
### Deprecated functions ### Deprecated functions
......
...@@ -27,6 +27,20 @@ function work_in_progress() { ...@@ -27,6 +27,20 @@ function work_in_progress() {
command git -c log.showSignature=false log -n 1 2>/dev/null | grep -q -- "--wip--" && echo "WIP!!" command git -c log.showSignature=false log -n 1 2>/dev/null | grep -q -- "--wip--" && echo "WIP!!"
} }
# Same as `gunwip` but recursive
# "Unwips" all recent `--wip--` commits in loop until there is no left
function gunwipall() {
while true; do
commit_message=$(git rev-list --max-count=1 --format="%s" HEAD)
if [[ $commit_message =~ "--wip--" ]]; then
git reset "HEAD~1"
(( $? )) && return 1
else
break
fi
done
}
# Check if main exists and use instead of master # Check if main exists and use instead of master
function git_main_branch() { function git_main_branch() {
command git rev-parse --git-dir &>/dev/null || return command git rev-parse --git-dir &>/dev/null || return
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment