mvn release:准备git push操作失败?

时间:2013-07-04 11:22:10

标签: git maven pom.xml maven-release-plugin

我正在尝试使用maven发布一个组件。这是项目结构:

root-
    A-project/pom.xml
    B-project/pom.xml
    C-project/pom.xml
    D-project/pom.xml

此处我们只有ssh://userID@gerritforge.lmera.companyName.se:29418/root的ssh网址root。因此,我们在每个项目中添加以下代码行以提供相对路径。

<pomFileName>A-project/pom.xml</pomFileName>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <executions>
        <execution>
            <id>default</id>
            <goals>
                <goal>perform</goal>
            </goals>
            <configuration>
                <pomFileName>A-project/pom.xml</pomFileName>
                <!--
                <pushChanges>false</pushChanges>
                -->
                <autoVersionSubmodules>true</autoVersionSubmodules>
            </configuration>
        </execution>
    </executions>
    <!--
    <configuration>
        <autoVersionSubmodules>true</autoVersionSubmodules>
    </configuration>
    -->
</plugin>

在运行mvn release:prepare时,项目正在成功构建,但在此之后我收到以下错误:

[ERROR] BUILD FAILURE
[INFO] Unable to tag SCM
Provider message:
The git-push command failed.
Command output:
To ssh://userID@gerritforge.lmera.companyName.se:29418/root
 ! [remote rejected] A-prject-template-1.1.12 -> A-prject-template-1.1.12 \
 (prohibited by Gerrit) error: failed to push some refs to \
 'ssh://userID@gerritforge.lmera.companyName.se:29418/root'

在执行mvn release:prepare之前,本地和远程都没有标记。

1 个答案:

答案 0 :(得分:0)

我使用Git on Jenkins在maven-release-plugin中遇到了同样的Gerrit故障。

  • 推送pom.xml - &gt; Gerrit SUCCESS
  • 本地标记SUCCESS
  • 推送标签 - &gt; Gerrit FAIL&#34; ...(Gerrit禁止)&#34;

解决方案:Gerrit权限&#34; Forge Committer&#34;, 见https://gerrit-review.googlesource.com/Documentation/error-prohibited-by-gerrit.html

原因:创建标记的Jenkins用户标识与推送到Gerrit的用户标识不同。