gpt4 book ai didi

git - Google Cloud Build 无法运行 NX 影响 :apps because it cannot reference the master~1 commit

转载 作者:行者123 更新时间:2023-12-04 13:41:24 25 4
gpt4 key购买 nike

我正在尝试建立一个使用 nx.dev 开发的 monorepo 完整 CI/CD 管道,我只构建和部署在提交中发生更改的应用程序和服务。

我的云构建链接到我的 github 存储库,当更改被推送时,它会启动构建。首先 npm install ,然后构建更改的应用程序。

根据 nx https://nx.dev/guides/monorepo-affected#ci 上的 nrwls 文档他们说要使用

npm run affected:build -- --base=origin/master~1 --head=origin/master

这会将当前提交与之前的提交进行比较,以找出要构建的服务或应用程序。

我曾尝试使用它,但在云构建中运行时出现此错误
Step #1: fatal: Not a valid object name master~1
Step #1: Command failed: git merge-base master~1 master
Step #1: fatal: Not a valid object name master~1

当使用 cloud-build-local 在本地构建它时,它工作正常并成功确定要构建的服务。

我认为它失败的原因是当云构建 check out git 存储库时,它只 check out 提交而没有 check out 先前的提交信息。因此它不能引用之前的提交。

有没有办法解决这个问题,或者我错过了什么?

谢谢!

最佳答案

我遇到了同样的问题,原因是受影响的需要深度 checkout ,因为它与 master 不同。 .因此,GHA 中的以下更改将解决它:

steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0

关于git - Google Cloud Build 无法运行 NX 影响 :apps because it cannot reference the master~1 commit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56641571/

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