我的设置:git
存储库位于 Atlassian Stash
服务器上,使用 Atlassian Bamboo
。
我正在使用 Maven 3.1.1
和 release-plugin 2.3.2
。在Bamboo
中的计划如下:
- 从
git
存储库签出 - 执行
clean install
- 执行
release:prepare
和release:perform
,加上ignoreSnapshots=true
和resume=false
在最后一步之前的所有步骤都能成功运行,但是 Maven
声明无法标记发布,因为该标记已经存在。以下是日志:
build 26-Nov-2013 10:36:37 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.3.2:prepare (default-cli) on project [PROJECT-NAME]: Unable to tag SCM
build 26-Nov-2013 10:36:37 [ERROR] Provider message:
build 26-Nov-2013 10:36:37 [ERROR] The git-tag command failed.
build 26-Nov-2013 10:36:37 [ERROR] Command output:
build 26-Nov-2013 10:36:37 [ERROR] fatal: tag '[PROJECT-NAME]-6.2.2' already exists
嗯,显然该标签已经存在,没什么大不了的。然而,这是我存储库中git tag
的样子:
bash:~/git/repositories/PROJECT-NAME$ git tag
[PROJECT-NAME]-5.2.5
[PROJECT-NAME]-5.3.0
[PROJECT-NAME]-5.3.1
[PROJECT-NAME]-5.4.0
[PROJECT-NAME]-5.5.0
[PROJECT-NAME]-5.5.1
[PROJECT-NAME]-5.5.2
[PROJECT-NAME]-5.5.3
[PROJECT-NAME]-5.5.4
[PROJECT-NAME]-5.6.0
[PROJECT-NAME]-5.6.1
[PROJECT-NAME]-5.6.2
[PROJECT-NAME]-5.6.3
[PROJECT-NAME]-5.6.4
[PROJECT-NAME]-5.6.5
[PROJECT-NAME]-5.6.6
[PROJECT-NAME]-6.0.0
[PROJECT-NAME]-6.0.1
[PROJECT-NAME]-6.0.2
[PROJECT-NAME]-6.1.0
[PROJECT-NAME]-6.1.1
[PROJECT-NAME]-6.1.2
[PROJECT-NAME]-6.2.0
[PROJECT-NAME]-6.2.1
通过svn2git
从一个svn
代码库克隆git
代码库。我已经尝试过多次重新导入该代码库,删除并重新在stash
服务器上克隆它。但是标签6.2.2
似乎仍然存在于Maven
的某个地方。这里发生了什么?
更新:我刚刚尝试删除代码库中的所有标签。结果相同。将版本从6.2.2
更改为6.2.3
则显示出积极的结果。
另一个更新:这似乎与代码库的名称有关。创建一个具有相同名称但末尾添加-2
的新代码库可以解决问题。