diff --git a/bashrc.sh b/bashrc.sh index 9460647..ea77faa 100755 --- a/bashrc.sh +++ b/bashrc.sh @@ -123,7 +123,7 @@ function commit { # Easily test this project after committing changes. # Otherwise can just source this file unless testing setup.sh. -PROJECT_TERMUX="$HOME/.git-env-termux" +export PROJECT_TERMUX="$HOME/.git-env-termux" function test-termux { if [[ -d "$PROJECT_TERMUX" ]]; then log "`date` - Updating '$PROJECT_TERMUX'.\n" @@ -147,56 +147,56 @@ alias update-termux="reload-termux " # Pulled from /me/env-ansible, need to make a shared library between it and Termux. # Change a branch to point at another. function load-branch { -rcvr="$1" # branch which we want to modify -base="$2" # branch with the changes we want + rcvr="$1" # branch which we want to modify + base="$2" # branch with the changes we want -if [[ "$rcvr" == "main" ]]; then - echo "*** ERROR: Are you nuts, fool!? Not main! Do it manually! ***" - return 1 -fi - -if [[ -z "$base" ]]; then - if [[ "$rcvr" == "prod" ]]; then - base="stage" - elif [[ "$rcvr" == "stage" ]]; then - base="dev" - else - echo "* Unsure which branch to use for '$rcvr'. Please specify." + if [[ "$rcvr" == "main" ]]; then + echo "*** ERROR: Are you nuts, fool!? Not main! Do it manually! ***" return 1 fi - echo "* Base was not specified, using '$base' for '$rcvr'." -else - echo "* Requested pointing '$rcvr' branch to '$base'." -fi -echo -e "\n* Ensuring we are on base branch '$base'." && -git switch "$base" && -echo -e "\n* Changing pointer for '$rcvr' to '$base'." && -git branch -f "$rcvr" "$base" && -#echo -e "\n* Switching to branch '$rcvr'." && -#git switch "$rcvr" && -echo -e "\n* Forcing push on branch '$rcvr'." && -git push --force --set-upstream origin "$rcvr" && -echo -e "\n* Done! Displaying list of remote branches." && -git ls-remote --heads | sort - -if [[ "$base" != "dev" ]]; then - echo -e "\n* Checking if a dev branch exists." - git ls-remote --exit-code --heads origin dev - dev_exists="$?" - if [[ "$dev_exists" == 0 ]]; then - echo -e "\n* Switching back to dev." - git switch dev - elif [[ "$dev_exists" == 2 ]]; then - echo -e "\n* Switching back to main." - git switch main + if [[ -z "$base" ]]; then + if [[ "$rcvr" == "prod" ]]; then + base="stage" + elif [[ "$rcvr" == "stage" ]]; then + base="dev" + else + echo "* Unsure which branch to use for '$rcvr'. Please specify." + return 1 + fi + echo "* Base was not specified, using '$base' for '$rcvr'." else - echo "*** ERROR: Unknown status for dev_exists, '$dev_exists'. ***" + echo "* Requested pointing '$rcvr' branch to '$base'." fi -fi -echo -e "\n* Verifying which branch we're on." -git branch + echo -e "\n* Ensuring we are on base branch '$base'." && + git switch "$base" && + echo -e "\n* Changing pointer for '$rcvr' to '$base'." && + git branch -f "$rcvr" "$base" && + #echo -e "\n* Switching to branch '$rcvr'." && + #git switch "$rcvr" && + echo -e "\n* Forcing push on branch '$rcvr'." && + git push --force --set-upstream origin "$rcvr" && + echo -e "\n* Done! Displaying list of remote branches." && + git ls-remote --heads | sort + + if [[ "$base" != "dev" ]]; then + echo -e "\n* Checking if a dev branch exists." + git ls-remote --exit-code --heads origin dev + dev_exists="$?" + if [[ "$dev_exists" == 0 ]]; then + echo -e "\n* Switching back to dev." + git switch dev + elif [[ "$dev_exists" == 2 ]]; then + echo -e "\n* Switching back to main." + git switch main + else + echo "*** ERROR: Unknown status for dev_exists, '$dev_exists'. ***" + fi + fi + + echo -e "\n* Verifying which branch we're on." + git branch } alias load-prod="load-branch prod" alias load-stage="load-branch stage"