我目前在项目中使用 nx-set-shas 时遇到问题。按照我的理解,nx_base 应该是捕获 CircleCI 中远程特性分支的最后一次成功提交,而 nx_head 应该代表当前的提交。为此,我在配置中将主分支名称设置为 $CIRCLE_BRANCH。
但是,我注意到nx_base 和nx_head 的值相同,这对应于我刚刚推送的提交。这似乎与我对 nx_base 代表远程功能分支的最后一次成功提交的期望相矛盾。
我已经按照 nx-set-shas 的设置说明进行操作,但似乎配置有误。这是相关的代码片段:
version: 2.1
orbs:
nx: nrwl/[email protected]
jobs:
lint:
docker:
- image: cimg/node:lts-browsers
steps:
- checkout
- run: npm ci
- nx/set-shas:
main-branch-name: $CIRCLE_BRANCH
- run: npx nx format:write
- run: npx nx affected --base=$NX_BASE -t lint --parallel=3
test:
docker:
- image: cimg/node:lts-browsers
steps:
- checkout
- run: npm ci
- nx/set-shas:
main-branch-name: $CIRCLE_BRANCH
- run: npx nx affected:test --base=$NX_BASE --parallel=3
我查看了 nx-set-shas 的源代码,它似乎从 CircleCI 获取了最后一次成功的提交。但就我而言,如何捕获我刚刚推送的提交? nx_base 不应该对应远程功能分支的最后一次成功提交吗?
对于如何正确配置 nx-set-shas 以捕获远程功能分支的先前成功提交的任何见解、解释或建议,我将不胜感激。提前谢谢你!