使用SPM添加依赖失败,报tag.forcesignannotated配置值错误如何解决?
问题根本原因
报错核心是Git全局配置中的tag.forcesignannotated项被设置为非法值null。该配置项用于控制Git是否强制为标签添加签名,仅支持布尔类型的true/false作为合法值。Xcode SPM拉取依赖解析标签时会读取该Git配置,值非法就会触发解析失败;CocoaPods依赖拉取逻辑不涉及该配置项的读取,因此可以正常使用。你之前尝试的清理Xcode缓存、切换Xcode版本等操作都没有触及Git全局配置层的问题,因此无法解决报错。
修复步骤
第一步:验证配置问题
打开终端执行以下命令,确认该配置的当前值:git config --global --get tag.forcesignannotated
如果输出结果为null,即可确认是该问题导致的报错。第二步:修正配置
根据你的实际需求选择以下任意一种操作即可:- 如果你不需要强制为Git标签签名,直接删除该配置项:
git config --global --unset tag.forcesignannotated - 如果你需要开启强制标签签名,将值修改为合法的布尔值:
git config --global tag.forcesignannotated true
- 如果你不需要强制为Git标签签名,直接删除该配置项:
第三步:验证修复效果
修正配置后回到Xcode,依次执行「重置包缓存」-「重新解析包版本」即可正常拉取SPM依赖。
内容的提问来源于stack exchange,提问作者Taras
相关产品推荐
相关产品推荐

