2013-02-12 34 views
2

我试图通过ssh使用Maven Release插件与git。
我运行命令MVN发布:准备并得到以下错误:如何让Maven Release Plugin通过SSH与Git协同工作?

[INFO] Working directory: C:\projects\sample 
[INFO] Executing: cmd.exe /X /C "git push ssh://[email protected]/sample master:master" 
[INFO] Working directory: C:\projects\sample 
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4:prepare (default-cli) on project sample: Unable to commit files 
[ERROR] Provider message: 
[ERROR] The git-push command failed. 
[ERROR] Command output: 
[ERROR] Permission denied, please try again. 
[ERROR] Permission denied, please try again. 
[ERROR] Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). 
[ERROR] fatal: The remote end hung up unexpectedly 

我在我的pom.xml如下:

<scm> 
    <developerConnection>scm:git:ssh://hbox/sample</developerConnection> 
    <tag>sample-1.1</tag> 
</scm> 

我使用公钥认证来访问ssh服务器,并且命令ssh bill @ hbox在没有提示输入密码的情况下工作。显然,Maven发布插件没有拿起我的私钥,我可以告诉它,因为它正在执行一系列“cmd.exe”来运行git。 那么我应该把我的私钥放在哪里,我如何让Maven知道它?我已经看过Maven Release插件的文档,并且在配置中没有看到有关ssh密钥的信息。我添加了一个新的服务器元素到我的settings.xml文件,但是这也不起作用。任何文件,你可以指出我在这个问题上将不胜感激。其他说明:私钥不受密码保护。另外,我在Windows 7和Cygwin上。

+0

http://stackoverflow.com/questions/2796303/maven-wont-use-public-key-to-deploy – 2013-02-12 21:23:10

回答

2

我在这里找到了答案。我无法让maven release插件在cygwin下工作,但是如果你使用msysgit(打开git-cmd.bat),然后输入命令“echo%HOME%”,然后将id_rsa放入%HOME /的.ssh。

MSysGit and ssh config. missing

+0

我MSysGit的这个解决问题/ SSH没有找到 “id_rsa” 键 – Nightingale7 2013-05-29 06:46:03

相关问题