我有一个打字稿项目,这是一个常用方法的库,我们希望将其提供给组织中的其他存储库。我们不想在仓库中转译代码,因此我们在gitignore中包含dist文件夹。当然,我们需要转译的代码才能分发并遇到使用位桶中的后推的想法,如下所述:https://support.atlassian.com/bitbucket-cloud/docs/push-back-to-your-repository/
从理论上讲,我们正在尝试遵循“正常”分支策略,即在较低的分支中具有拉取请求,但是一旦合并到master分支,则复制dist文件夹,并提交到bitbucket和tag中。然后,该标记版本将由其他存储库使用。
这是bitbucket-pipelines.yml条目:
master:
- step: *Lint
- step: *Test
- step: *Build
- step: *PushDistToRepo
PushDistToRepo步骤仅在主服务器中发生。这是该步骤的作用:
- step: &Lint
name: Lint
caches:
- node
script:
- npm ci
- npm run lint
- step: &Test
name: Unit Tests
caches:
- node
script:
- npm ci
- npm run test
- step: &Build
name: Build the repository
caches:
- node
script:
- npm ci
- npm run build
- step: &PushDistToRepo
name: Push the build artifact '\dist' back to repo
trigger: manual # Uncomment to make this a manual deployment.
caches:
- node
script:
- git add -f dist/
- git commit -m "[skip ci] Updating the build artifiact in build ${BITBUCKET_BUILD_NUMBER}"
- git push
在管道中运行此错误时,此错误发生在步骤-git add -f dist /:
fatal: pathspec 'dist/' did not match any files
因此,似乎dist文件夹不存在或无法创建。有什么想法吗?
答案 0 :(得分:0)