diff --git a/Build/AtlasBuildScripts/checkout_Gaudi.sh b/Build/AtlasBuildScripts/checkout_Gaudi.sh
index fcadbd9ddd1450c94a6c580876ff394db58edcb3..e3594529d3fbb1807a12560fb623380f7afbacfc 100755
--- a/Build/AtlasBuildScripts/checkout_Gaudi.sh
+++ b/Build/AtlasBuildScripts/checkout_Gaudi.sh
@@ -75,6 +75,11 @@ cd ${SOURCEDIR}
 git fetch origin
 git checkout ${TAGBRANCH}
 
+# If this is a branch, fast forward to the latest version of it:
+if git show-ref -q --verify "refs/heads/${TAGBRANCH}" 2>/dev/null; then
+    git pull
+fi
+
 # If an output file was not specified, stop here:
 if [ "$HASHFILE" = "" ]; then
     exit 0
diff --git a/Build/AtlasBuildScripts/checkout_atlasexternals.sh b/Build/AtlasBuildScripts/checkout_atlasexternals.sh
index 219215043db823225dcaca2d202caeab61ecf8cf..a15df685566ed55934563b57d3af603589617a25 100755
--- a/Build/AtlasBuildScripts/checkout_atlasexternals.sh
+++ b/Build/AtlasBuildScripts/checkout_atlasexternals.sh
@@ -79,6 +79,11 @@ cd ${SOURCEDIR}
 git fetch origin
 git checkout ${TAGBRANCH}
 
+# If this is a branch, fast forward to the latest version of it:
+if git show-ref -q --verify "refs/heads/${TAGBRANCH}" 2>/dev/null; then
+    git pull
+fi
+
 # If an output file was not specified, stop here:
 if [ "$HASHFILE" = "" ]; then
     exit 0