From 330461cf1e784be95e61a439c5b9e79ba9020104 Mon Sep 17 00:00:00 2001 From: Joe Schr <8218910+TheJoeSchr@users.noreply.github.com> Date: Thu, 2 Feb 2023 16:54:27 +0100 Subject: [PATCH 1/3] setup.sh: checks if git directory is dirty before bothering user with potentially scary question --- setup.sh | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/setup.sh b/setup.sh index b7dbe9684..da887a336 100755 --- a/setup.sh +++ b/setup.sh @@ -191,25 +191,37 @@ function update() { } # Reset Develop or Stable branch +function check_git_changes() { + if [ -z "$(git status --porcelain)" ]; then + echo "No changes in git directory" + return 0 + else + echo "Changes in git directory" + return 1 + fi +} function reset() { echo_block "Resetting branch and virtual env" if [ "1" == $(git branch -vv |grep -cE "\* develop|\* stable") ] then + if check_git_changes; then + read -p "Keep your local changes? (Otherwise will remove all changes you made!) [Y/n]? " + if [[ $REPLY =~ ^[Nn]$ ]]; then - read -p "Reset git branch? (This will remove all changes you made!) [y/N]? " - if [[ $REPLY =~ ^[Yy]$ ]]; then + git fetch -a - git fetch -a - - if [ "1" == $(git branch -vv | grep -c "* develop") ] - then - echo "- Hard resetting of 'develop' branch." - git reset --hard origin/develop - elif [ "1" == $(git branch -vv | grep -c "* stable") ] - then - echo "- Hard resetting of 'stable' branch." - git reset --hard origin/stable + if [ "1" == $(git branch -vv | grep -c "* develop") ] + then + echo "- Hard resetting of 'develop' branch." + git reset --hard origin/develop + elif [ "1" == $(git branch -vv | grep -c "* stable") ] + then + echo "- Hard resetting of 'stable' branch." + git reset --hard origin/stable + fi + else + echo "Reset ignored because you are not on 'stable' or 'develop'." fi fi else From 3fd6d7298493dc6f6956b2c7e77de2a62bcf09ff Mon Sep 17 00:00:00 2001 From: Joe Schr <8218910+TheJoeSchr@users.noreply.github.com> Date: Thu, 2 Feb 2023 20:56:54 +0100 Subject: [PATCH 2/3] setup.sh: fix truty/falsy return of check_git_changes() --- setup.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/setup.sh b/setup.sh index da887a336..ca5361bad 100755 --- a/setup.sh +++ b/setup.sh @@ -190,16 +190,17 @@ function update() { updateenv } -# Reset Develop or Stable branch function check_git_changes() { if [ -z "$(git status --porcelain)" ]; then echo "No changes in git directory" - return 0 + return 1 else echo "Changes in git directory" - return 1 + return 0 fi } + +# Reset Develop or Stable branch function reset() { echo_block "Resetting branch and virtual env" From 02c0f91f4dbb321ea42360d665cfa2e6f4236b99 Mon Sep 17 00:00:00 2001 From: Joe Schr <8218910+TheJoeSchr@users.noreply.github.com> Date: Fri, 3 Feb 2023 16:16:30 +0100 Subject: [PATCH 3/3] fix: removes duplicated if branch --- setup.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/setup.sh b/setup.sh index ca5361bad..a9ff36536 100755 --- a/setup.sh +++ b/setup.sh @@ -221,8 +221,6 @@ function reset() { echo "- Hard resetting of 'stable' branch." git reset --hard origin/stable fi - else - echo "Reset ignored because you are not on 'stable' or 'develop'." fi fi else