gpt4 book ai didi

Xcode Bot 不会将 git 子模块更新为指定的提交

转载 作者:行者123 更新时间:2023-12-01 18:00:25 25 4
gpt4 key购买 nike

我的 Xcode Bot 使用的是我的存储库子模块的过时版本。

尽 pipe 模块在父应用程序的提交历史记录中已更新为新版本,但它仍会构建旧的子模块代码。

  1. 父存储库使用子模块 v1.0。
  2. 父存储库将子模块更新到 v2.0 并将子项目提交到 github。
  3. “提交时”Xcode Bot 会自动为新提交运行。
  4. 父应用已上传到 TestFlight。
  5. TestFlight 版本包含正确的 v2.0 子模块提交(对父存储库的最后一次提交)。
  6. 但是 TestFlight 版本包含过时的子模块 v1.0 代码。

当我的错误在 TestFlight 构建上重现时,尽管在子模块和本地构建中被“修复”,我觉得我疯了。

事实证明 Xcode 机器人无法正确提取指定的子模块提交。

最佳答案

此问题的更简单解决方案,不需要服务器拥有 git 远程凭据 - 将其添加为机器人的预集成脚本:

#!/bin/sh
# Enumerates each submodule to check out the desired commit.
# Needed because Xcode bots for some reason prefers to check out
# the branch head, which may result in the wrong commit.
cd "$XCS_PRIMARY_REPO_DIR"
git submodule foreach --recursive 'git checkout $sha1'

它递归地枚举您的子模块并检查父存储库期望的提交。

关于Xcode Bot 不会将 git 子模块更新为指定的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29175479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com