Jenkins-bitbucket(Git-bash / Openssh和WIndows提示/选美之间的区别)

时间:2016-09-24 09:25:47

标签: jenkins ssh bitbucket

我努力设置Jenkins Jobs连接到bitbucket。这是一台Windows机器。

  1. 我已经生成了一个SSH密钥对,并为我的Bitbucket添加了一个SSH密钥。
  2. 我使用Git-bash
  3. 加载了这样的私钥
      

    $ ssh-add -l   2048 SHA256:iB // Q8zoeAtGBRrPDnK9yicrANAJs80Fx9tNZSRgHOY / d / jenkins / jenkins_bitbucket(RSA)

    之后,此命令运行时没有显示错误。

      

    $ git.exe fetch --tags --progress git@bitbucket.org:ilppoc / security.git + refs / heads / :refs / remotes / origin /

    此命令的结果也没问题。

      

    ssh -vT git@bitbucket.org

         

    以ilppoc登录。

         

    您可以使用git或hg连接到Bitbucket。 Shell访问是   禁用。 debug1:client_input_channel_req:channel 0 rtype   exit-status reply 0 debug1:channel 0:free:client-session,nchannels   1转移:发送3112,收到1728字节,0.5秒字节   每秒:发送5867.3,收到3257.9 debug1:退出状态0

    但我的Windows提示无法识别密钥。

      

    C:\ Windows \ system32> git ls-remote -h git@bitbucket.org:ilppoc / security.git权限被拒绝(publickey)。   致命:无法从远程存储库读取。请确认你   拥有正确的访问权限并且存储库存在。

    所以我将OpenSSH私钥转换为Putty .ppk并使用pageant手动加载。我可以在选美窗口看到它。

    它仍然无济于事。结果我的Jenkins作业失败了,因为我提到这个命令不会从Windows提示符运行。

      

    D:\ testbitbucketclone \ security> git.exe fetch --tags --progress git@bitbucket.org   :ilppoc / security.git + refs / heads / :refs / remotes / origin /   权限被拒绝(publickey)。   致命:无法从远程存储库读取。   请确保您拥有正确的访问权限   存储库存在。

    这里有什么问题?

    此外,known_hosts已填满。 Git-bash是否正常,Windows提示不起作用?

    我该如何解决这个问题?

    编辑: 詹金斯的确切错误就是这个。

      

    引起:hudson.plugins.git.GitException:命令“git.exe fetch   --tags --progress git@bitbucket.org:ilppoc/security.git + refs / heads / :refs / remotes / origin / “返回状态码128:stdout:stderr:主机密钥验证失败致命的:无法读懂   远程存储库。

1 个答案:

答案 0 :(得分:0)

如果您正在为Windows运行较新版本的git,您可能会从命令(从Windows命令提示符)获取有用的诊断信息:

set GIT_SSH_COMMAND=ssh -vvv
git clone git@bitbucket.org:ilppoc/security.git

这将提供有关git使用的ssh的详细调试信息。

如果您希望从Windows“Git Bash”shell运行该命令,则命令为:

GIT_SSH_COMMAND="ssh -vvv" git clone git@bitbucket.org:ilppoc/security.git