Lanzamiento de Maven: prepare no confirma la label

Intenta realizar un lanzamiento en un proyecto de maven, que se ha lanzado con éxito antes.

Cuando mvn release:prepare Me mvn release:prepare las tags de lanzamiento y las nuevas tags de instantáneas y las comstackciones del proyecto.

Pero cuando intenta presionar al control remoto, obtengo

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.0:prepare (default-cli) on project NeuralAnalysis: Unable to tag SCM [ERROR] Provider message: [ERROR] The git-push command failed. [ERROR] Command output: [ERROR] To ssh://gitosis@10.41.129.2/NeuralAnalysis.git [ERROR] ! [rejected] NeuralAnalysis-1.5.6 -> NeuralAnalysis-1.5.6 (non-fast-forward) [ERROR] error: failed to push some refs to 'ssh://gitosis@10.41.129.2/NeuralAnalysis.git' [ERROR] To prevent you from losing history, non-fast-forward updates were rejected

Y, de hecho, al intentar ejecutar git push ssh://gitosis@10.41.129.2/NeuralAnalysis.git NeuralAnalysis-1.5.6 manualmente, también sale con la misma queja.

La ejecución de git pull dice 'Ya está actualizado'. git branch muestra que estoy en el 'maestro'. git push origin da 'Todo al día'.

Mirar el repository usando Tower muestra que 'master', 'origin / master' y 'NeuralAnalysis-1.5.6' son todos iguales y en el último commit. El directory de trabajo contiene los files release.properties y pom.xml.releaseBackup.

Me parece que todo está bien con el repository en general.

Resulta que era una label remota con el mismo nombre, como lo sugirió VonC en el comentario. Esto probablemente fue creado por alguna versión previamente abortada.

Aunque encontré la label remota inspeccionando manualmente el directory git ls-remote --tags / tags en el repository remoto, git ls-remote --tags también los mostrará y la git ls-remote --tags git push --verbose también mostrará más sobre el problema en general.

Para solucionar esto, primero recupere las tags remotas con git fetch --tags .

Una forma de realizar el siguiente paso es simplemente omitir esa label de publicación actualizando el pom.xml para tener una versión más alta -SNAPSHOT (incluidas las references en el mismo proyecto por otros modules a esa instantánea), verifíquelas y haga mvn release:clean; mvn release:prepare mvn release:clean; mvn release:prepare nuevo.