From 5ba371380f4cf137d8d00c647734b899d9307e90 Mon Sep 17 00:00:00 2001 From: PMon Dev Date: Mon, 9 Nov 2026 22:09:48 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20Flutter=20=E5=BD=92=E6=A1=A3?= =?UTF-8?q?=E8=A7=A3=E5=8E=8B=E5=8A=A0=20--no-same-owner=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E7=99=BB=E8=AE=B0=20safe.directory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit run 8 实测:1.58GB 归档 3 分钟下完、解压成功,最后卡在 fatal: detected dubious ownership in repository at '/root/development/flutter' flutter 工具链启动时会调 git 取版本,被该保护拦下 → exit 128。 根因是归档内 uid 非 0,root 身份解压仍按原 uid 设属主。 解压加 --no-same-owner,并额外 git config --global safe.directory 兜底。 --- .gitea/workflows/design-system-guard.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/design-system-guard.yml b/.gitea/workflows/design-system-guard.yml index 635986c..2596a9d 100644 --- a/.gitea/workflows/design-system-guard.yml +++ b/.gitea/workflows/design-system-guard.yml @@ -82,10 +82,16 @@ jobs: mkdir -p "$HOME/development" echo "下载 $URL" curl -fsSL --retry 3 --retry-delay 5 --connect-timeout 20 -o /tmp/flutter.tar.xz "$URL" - tar xf /tmp/flutter.tar.xz -C "$HOME/development" + # --no-same-owner:归档内的 uid 不是 0,按原 uid 解压会让 + # /root/development/flutter 属主≠root,git 2.35+ 随即报 + # "fatal: detected dubious ownership",而 flutter 工具链启动时 + # 会调用 git 取版本 → 直接 exit 128。run 8 就死在这里。 + tar --no-same-owner -xf /tmp/flutter.tar.xz -C "$HOME/development" rm -f /tmp/flutter.tar.xz echo "$HOME/development/flutter/bin" >> "$GITHUB_PATH" echo "FLUTTER_BIN=$HOME/development/flutter/bin/flutter" >> "$GITHUB_ENV" + # 双保险:即便属主仍有偏差,也让 git 认这个目录。 + git config --global --add safe.directory "$HOME/development/flutter" "$HOME/development/flutter/bin/flutter" --version - name: Run design system guards