在 Git 中使用 maven-release-plugin

Posted

技术标签:

【中文标题】在 Git 中使用 maven-release-plugin【英文标题】:Using maven-release-plugin wit Git 【发布时间】:2013-07-05 01:59:21 【问题描述】:

我用 maven 创建了一个 java 项目。我正在尝试使用 maven-release 插件发布我的项目。

当我按照下图所示的顺序执行以下命令时,maven 发布插件卡在它试图将更改推送到 git 存储库的位置

谁能帮我解决这里的问题。

我已将 SCM 部分添加到我的应用程序的项目对象模型中。我还使用 ssh-add 设置了密码。但仍然没有运气:(

这是我在将更改应用到 scm 部分后遇到的新错误

【问题讨论】:

你能复制并过去那个错误信息吗? 没有错误信息。它只是挂在那里,没有任何进展 【参考方案1】:

第一个图像的问题,可能是由于缺少 scm 凭据引起的。 我使用 maven 3.0.5、m2releaseplugin 2.3.2 和 git 作为 scm。 这个问题可以通过在项目的 pom.xml 中提供 scm 参数“username”和“password”来解决。从 maven 帮助中检查 scm 插件参数。 如果您使用 Jenkins CI 和 m2 发布插件,您可以从 web gui 指定用户名/密码参数。 这是由于发布插件的 scm 插件依赖性。 希望这会有所帮助

【讨论】:

【参考方案2】:

您的日志显示 Maven 正在尝试使用 HTTPS 推送。您可能没有配置 HTTP(S) 身份验证,这就是推送到远程存储库失败的原因。

由于您想使用 SSH,您必须将您的 <developerConnection> 标签更改为 scm:git:ssh://git@github.com:kitis/sample-multimodule-project.git

如果您想使用 HTTP(S) 进行推送,可以尝试使用.netrc 文件。

【讨论】:

我按照你的解释做了修改,但还是没有运气:( 我更新了我的帖子,在 URL 中添加了 ssh:// 部分。我的错,我没有仔细检查我的答案。 我现在收到新的错误消息,上面写着 ssh: github.com:kitis: no address associated with name 嗯,这真的很奇怪。以下项目使用 maven-release 和 github,您可以检查他们的 <scm> 配置,看看它是否适合您:github.com/excilys/gatling/blob/master/pom.xml / github.com/mybatis/mybatis-3/blob/master/pom.xml。

以上是关于在 Git 中使用 maven-release-plugin的主要内容,如果未能解决你的问题,请参考以下文章

在Visual Studio 中使用git——标记(Tag)管理

Git 在团队中的最佳实践--如何正确使用Git Flow

Git 在团队中的最佳实践--如何正确使用Git Flow

在 Windows 版 Git 中使用 GIT_SSH_COMMAND

如何在 git 中使用完整路径?

在 Eclipse git 中使用本机 git 而不是 jgit?