cmd/coordinator: make version.sh check upstream is set

Fixes golang/go#29929

Change-Id: I0ec393e0154c21969d56e1c80144a24da7fb406d
Reviewed-on: https://go-review.googlesource.com/c/build/+/164780
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
diff --git a/cmd/coordinator/version.sh b/cmd/coordinator/version.sh
index 4c5e073..95fa79b 100755
--- a/cmd/coordinator/version.sh
+++ b/cmd/coordinator/version.sh
@@ -5,11 +5,12 @@
 # license that can be found in the LICENSE file.
 
 VERSION=$(git rev-parse HEAD)
+CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
 if ! git diff-index HEAD --quiet || ! git diff-files --quiet; then
   VERSION=$VERSION-dirty
   dirty=1
 fi
-if [ -n "$dirty" ] || [ -n "$(git rev-list '@{upstream}..HEAD')" ]; then
+if [ -n "$dirty" ] || [ -z "$(git config --get-all "branch.${CURRENT_BRANCH}.remote")" ] || [ -n "$(git rev-list '@{upstream}..HEAD')" ]; then
   VERSION=$VERSION-$USER-$(date -u +%Y-%m-%dT%H:%M:%SZ)
 fi
 echo "$VERSION"