Nrg*_*zer 7 git gitlab gitlab-ci semantic-release
我正在使用语义发布进行版本控制。每当我将某些东西推送到我的分支时,CI(Gitlab)就会执行语义发布。我的问题是我推送到我的 git 分支,semantic-release 创建了一个版本并创建了标签(例如 1.0.0)。最后,我发现我错过了这次提交的一些重要内容。所以我删除了Gitlab中的标签(存储库>标签,例如https://gitlab.com/user/project/-/tags),最后再次推送我的提交。但现在,semantic-release 告诉我该标签已经存在,但 Gitlab 不再显示任何标签(我删除了所有标签)。现在我决定将以下行添加到我的 CI 中:
git show-ref --tags -d
这显示了我已经在 Gitlab 中删除的所有标签,但它们似乎存在于我的 CI 中。所以我很困惑这里发生了什么......有什么想法吗?我的 CI 中是否需要“同步标签”之类的东西?
小智 3
此行为是由运行者脏缓存引起的。您.gitlab-ci.yml应该将 git 策略声明为克隆而不是fetch,如下所示:
ajob:
variables:
GIT_STRATEGY: clone
Run Code Online (Sandbox Code Playgroud)
以下是有关此特定行为的一些讨论:
删除了在 gitlab 远程 CI 上检测到的 git 标签,但在本地存储库上未检测到 git 标签
| 归档时间: |
|
| 查看次数: |
3949 次 |
| 最近记录: |