问题标签 [semantic-release]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 为什么在语义释放执行 git push 时忽略 $HOME/.config/git/credentials
我正在使用git 2.19.0并且我的发布 CI 工作失败。
我想使用 git git-credentials进行身份验证。
这就是我创建$HOME/.config/git/credentials的方式
这就是我所拥有的.git/config
:
这就是我所拥有的$HOME/.config/git/credentials
:
但是,当我这样做时git push
,它无法使用该配置,而是从.git/config
项目中读取配置。
这样cp $HOME/.config/git/credentials ~/.git-credentials
做没有帮助。
为什么我这样做时会忽略$HOME/.config/git/credentialsgit push
?
semantic-release - 在 preversion 步骤中获取版本
我正在使用一个名为的包babel-plugin-inline-package-json
在我的构建步骤中提取我的版本号。当前使用语义发布包版本始终是 0.0.0 而不是正确的版本号。preversion
我设置语义发布以使用 npm命令触发构建。我的印象是,到语义发布触发预版本时,它已经将新版本插入到 package.json 中,但我一直得到 0.0.0。提取版本号以便在构建步骤中获取它的正确方法是什么?
pact - 在语义发布中处理 nextRelease 版本
所以我一直在阅读文档,并且对我应该做的 事情有所了解,但没有真正掌握我该怎么做。
这是我的问题: - 我正在使用语义发布将我的包发布到 npm - 我还使用 Pact 进行了合同测试。- 我希望我的契约在发布后发布,如果成功的话,与新版本的版本相同
我怎样才能轻松做到这一点?
我查看了文档,并了解我可以使用该exec
插件,但是,我发现我不清楚我应该如何配置语义发布以与现在完全相同,至少将版本公开为env 变量,并且找不到这样做的人的示例。
我可以使用钩子,但我担心如果由于某些原因没有发生 npm publish,我仍然会在下一个版本中发布我的协议,而下一个版本并不完全存在。这里有什么建议吗?
看来我也可以编写自己的 JS 脚本(请参阅https://github.com/semantic-release/semantic-release/blob/3cc62f0318ff8917fcdc7cebe890da9dbaa7b3f9/docs/developer-guide/js-api.md)以及处理版本,但我不确定这个示例做了什么以及它涵盖了当前行为的内容。
我想我也可以编写我自己的协议插件,但这比理解语义释放的内部如何工作更重要。
所以我在分享一些例子/经验,也许是一个简单的解决方案,可以在不到 30 分钟的时间内完成 :)
谢谢
PS:很抱歉在这里发帖,但语义释放的问题似乎并不是真正的支持问题。
semantic-release - 语义发布:是否可以在 repo 中跟踪和发布某个目录?
我们有一个带有 JavaScript 子模块的 Java 项目,其结构如下所示:
java-project
|- folder1
|- folder2
|- ...
|- javascript-submodule
|- package.json
|- ...
是否可以设置semantic-release
为javascript-submodule
仅跟踪更改并使用它触发 npm 发布javascript-submodule/package.json
?
node.js - 语义发布无法发布到 npm
我正在使用语义发布 npm 模块来执行循环 ci 中的发布。我收到以下错误
[semantic-release] [@semantic-release/npm] › ℹ 将 1.0.0 版写入 /home/circleci/tmp npm 中的 package.json 错误!版本未更改,可能需要 --allow-same-version
npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/home/circleci/.npm/_logs/2019-01-19T15_21_36_194Z-debug.log [下午 3:21:36] [语义发布] › ✖ 插件“@semantic-release/npm”的“准备”步骤失败 [下午 3:21:36] [语义发布] › ✖ 运行语义发布时出错:{ 错误:命令失败:npm 版本 1.0.0 --no-git-tag-version npm ERR!版本未更改,可能需要 --allow-same-versionnpm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/home/circleci/.npm/_logs/2019-01-19T15_21_36_194Z-debug.log可能需要--allow-same-version\n\nnpm ERR!可以在以下位置找到此运行的完整日志:\nnpm ERR!
/home/circleci/.npm/_logs/2019-01-19T15_21_36_194Z-debug.log\n',
失败:true,信号:null,cmd:'npm version 1.0.0 --no-git-tag-version', timedOut:false,killed:false,pluginName:'@semantic-release/npm'} {错误:命令失败:npm version 1.0.0 --no-git-tag-version npm ERR!版本未更改,可能需要 --allow-same-versionnpm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/home/circleci/.npm/_logs/2019-01-19T15_21_36_194Z-debug.log可能需要--allow-same-version\n\nnpm ERR!可以在以下位置找到此运行的完整日志:\nnpm ERR!
/home/circleci/.npm/_logs/2019-01-19T15_21_36_194Z-debug.log\n',
失败:true,信号:null,cmd:'npm version 1.0.0 --no-git-tag-version', timedOut: false, kill: false, pluginName: '@semantic-release/npm' }退出代码 1
我该如何解决?
semantic-release - 插件加载阶段出现意外的 EPLUGINCONF
我正在实现一个语义发布插件,但是当我将它应用到构建时,它会触发以下错误。
我可以理解为我的插件(gradle-semantic-release-plugin)生成的配置很糟糕,但我找不到它发生的原因以及如何修复。我希望我能得到社区的帮助。
我的发布配置在这个 package.json中列出,我的插件没有配置。
提前致谢!
angular - 如何使用语义发布在 Bitbucket 存储库中发布 Angular 库?
我正在开发一个 Angular 库,我正在努力使发布过程尽可能自动化。我一直在研究不同的工具,并且看到了一些非常有用的工具:
- 提交消息格式的Commitizen
- Husky使用 git hooks 强制提交格式
- 语义发布自动发布和发布新版本并生成变更日志
关键是这些工具似乎配置得很好,可以在 GitHub 和 NPM 的环境中工作,但我的环境与 Bitbucket 一起工作,并且不使用 NPM 来托管库。
所以我有几个问题:
如您所知,当您创建 Angular 库时,它是在“项目”目录下的工作区中创建的。所以假设我有以下结构:
此代码位于一个存储库中,因此如果我想发布我的库,以便可以使用 package.json 中的以下内容将其安装在其他应用程序中:
构建后是否应该有另一个 Bitbucket 存储库来发布 dist 文件夹中的内容?还是我应该提交并推送当前存储库中的 dist 文件夹?我有点失落。
我应该如何配置语义发布以仅影响库?
提前致谢。
semantic-release - 语义释放是否有一个替换器来替换文件中的字符串?
我很惊讶没有看到用于语义发布的插件来替换文件中的字符串(例如,通过正则表达式),例如,更新服务工作者(以及自述文件)中的版本字符串。
语义发布是否有这样的功能或插件?
node.js - 如何使用 CircleCI 进行语义发布在未发现任何更改时失败
我已经设置了一个 CircleCI 作业来运行语义发布,但我希望 CircleCI 在没有发现任何更改时失败。即当语义释放输出时:
没有相关的变化,所以没有发布新版本
运行线的 CircleCi 片段。
git - 无法通过语义释放推送到不合格的目的地
我正在尝试使用语义发布从 Jenkins 作业中发布我的库,但出现此错误:
错误:无法推送到不合格的目的地:来源/语义发布测试
在我的本地机器上,我没有问题。这是完整的日志:
我错过了什么?