You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode Cloud执行Flutter命令报错:fatal: Not a valid object name origin/master

解决Xcode Cloud工作流中"fatal: Not a valid object name origin/master"错误

问题分析

错误提示表明当前仓库中找不到origin/master的引用,大概率是Xcode Cloud默认采用浅克隆(仅拉取最新提交,不包含完整分支引用)导致的——尤其是Xcode 16.2可能调整了克隆策略,使得远程分支引用未被正确拉取。而Flutter命令执行时依赖当前仓库的git分支信息,因此触发错误。

解决方案

方案1:在脚本中补充git拉取命令

修改ci_post_clone.sh,进入仓库路径后先拉取远程分支引用,确保origin/master存在:

#!/bin/sh

set -e

cd $CI_PRIMARY_REPOSITORY_PATH

# 新增:拉取远程master分支的引用
git fetch origin master
# 可选:确保当前工作分支为master
git checkout master

echo "Installing Flutter using git"
git clone https://github.com/flutter/flutter.git --depth 1 -b stable $HOME/flutter
export PATH="$PATH:$HOME/flutter/bin"

echo "Flutter artifacts"
flutter precache --ios

... more commands here.....

方案2:调整Xcode Cloud工作流的克隆设置

在Xcode Cloud工作流配置中,将浅克隆改为完整克隆:

  • 打开Xcode,进入Product > Cloud > Workflows
  • 选择对应工作流,切换到Environment标签页
  • 找到Repository Cloning设置,将Clone Depth改为Full

方案3:确认分支名一致性

检查远程仓库分支名确实为master(而非main或其他名称),本地执行git branch -a可查看所有远程分支列表,确保推送分支与工作流监听分支完全匹配。

验证

修改后重新推送代码到origin/master触发工作流,观察错误是否消失。本地可模拟浅克隆场景测试:

git clone --depth 1 <你的仓库地址>
cd <仓库目录>
git fetch origin master
# 执行Flutter命令验证

内容的提问来源于stack exchange,提问作者jordi toda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 12:07:13