From c184d5e1f31c913935671832f203586e7ea9a177 Mon Sep 17 00:00:00 2001 From: Siavash Sameni Date: Thu, 9 Apr 2026 06:07:10 +0400 Subject: [PATCH] fix: build scripts use fetch+reset instead of pull to avoid ref lock errors git pull fails when refs are stale from concurrent builds. Switch to git gc + git fetch + git reset --hard origin/branch for robustness. Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/build-and-notify.sh | 4 +++- scripts/build-linux-docker.sh | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/scripts/build-and-notify.sh b/scripts/build-and-notify.sh index f3b0002..f9b016f 100755 --- a/scripts/build-and-notify.sh +++ b/scripts/build-and-notify.sh @@ -53,7 +53,9 @@ if [ "$DO_PULL" = "1" ]; then cd "$BASE_DIR/data/source" git reset --hard HEAD 2>/dev/null || true git clean -fd 2>/dev/null || true - git pull origin feat/android-voip-client 2>&1 | tail -3 + git gc --prune=now 2>/dev/null || true + git fetch origin feat/android-voip-client 2>&1 | tail -3 + git reset --hard origin/feat/android-voip-client 2>/dev/null || true fi # Clean Rust if requested diff --git a/scripts/build-linux-docker.sh b/scripts/build-linux-docker.sh index 2bea90c..1157021 100755 --- a/scripts/build-linux-docker.sh +++ b/scripts/build-linux-docker.sh @@ -54,7 +54,9 @@ if [ "$DO_PULL" = "1" ]; then cd "$BASE_DIR/data/source" git reset --hard HEAD 2>/dev/null || true git clean -fd 2>/dev/null || true - git pull origin feat/android-voip-client 2>&1 | tail -3 + git gc --prune=now 2>/dev/null || true + git fetch origin feat/android-voip-client 2>&1 | tail -3 + git reset --hard origin/feat/android-voip-client 2>/dev/null || true fi if [ "$DO_CLEAN" = "1" ]; then