aboutsummaryrefslogtreecommitdiff
path: root/scripts/git
diff options
context:
space:
mode:
authorteor <teor@torproject.org>2019-09-10 12:07:13 +1000
committerteor <teor@torproject.org>2019-09-10 12:10:28 +1000
commit51b792b000d8560cf5b61b887eadcd9aece27d04 (patch)
treead598675f41d312724dddf68145c40dfb4db5124 /scripts/git
parent796a9b37ea346f413f6684505ca31879ddf3f0f1 (diff)
downloadtor-51b792b000d8560cf5b61b887eadcd9aece27d04.tar.gz
tor-51b792b000d8560cf5b61b887eadcd9aece27d04.zip
scripts: Allow git-push-all.sh to be run from any directory
Closes 31678.
Diffstat (limited to 'scripts/git')
-rwxr-xr-xscripts/git/git-push-all.sh18
1 files changed, 16 insertions, 2 deletions
diff --git a/scripts/git/git-push-all.sh b/scripts/git/git-push-all.sh
index 8e49e81b9d..701fea40f2 100755
--- a/scripts/git/git-push-all.sh
+++ b/scripts/git/git-push-all.sh
@@ -30,6 +30,13 @@ set -e
# Don't change this configuration - set the env vars in your .profile
#
+# The tor master git repository directory from which all the worktree have
+# been created.
+TOR_MASTER_NAME=${TOR_MASTER_NAME:-"tor"}
+# Which directory do we push from?
+if [ "$TOR_FULL_GIT_PATH" ]; then
+ TOR_GIT_PUSH_PATH=${TOR_GIT_PUSH_PATH:-"$TOR_FULL_GIT_PATH/$TOR_MASTER_NAME"}
+fi
# git push command and default arguments
GIT_PUSH=${TOR_GIT_PUSH:-"git push --atomic"}
# The upstream remote which git.torproject.org/tor.git points to.
@@ -91,8 +98,6 @@ if [ "$1" = "--" ]; then
shift
fi
-echo "Calling $GIT_PUSH" "$@" "<branches>"
-
if [ "$TEST_BRANCH_PREFIX" ]; then
if [ "$UPSTREAM_REMOTE" = "${TOR_UPSTREAM_REMOTE_NAME:-upstream}" ]; then
echo "Pushing test branches ${TEST_BRANCH_PREFIX}_nnn to " \
@@ -102,6 +107,15 @@ if [ "$TEST_BRANCH_PREFIX" ]; then
fi
fi
+if [ "$TOR_GIT_PUSH_PATH" ]; then
+ echo "Changing to $GIT_PUSH_PATH before pushing"
+ cd "$TOR_GIT_PUSH_PATH"
+else
+ echo "Pushing from the current directory"
+fi
+
+echo "Calling $GIT_PUSH" "$@" "<branches>"
+
################################
# Git upstream remote branches #
################################