【问题标题】:Linking jenkins with git repository - the remote end hung up unexpectedly将 jenkins 与 git 存储库链接 - 远程端意外挂断
【发布时间】:2018-05-02 06:17:30
【问题描述】:

我正在尝试将 jenkins 连接到 git 存储库,以便在任何更改提交到存储库时触发构建。

Jenkins 版本 - 2.46.3,Java 版本 - 1.7.51,CentOS 版本 - 6.6

我的 git 存储库位于 LAN 中(例如 IP - 10.0.0.1),要克隆存储库,我使用以下命令:

git clone test@10.0.0.1:/path/to/repo

然后,将提示test 的密码 - 这会正确克隆 git 存储库。

但是,当我尝试使用相同的凭据、IP 和路径与 jenkins 连接时,它给了我如下屏幕截图所示的错误。

我的 centOS 中有一个 jenkins 用户 - 我使用该用户将 SSH 密钥添加到 ~/.ssh/known_hosts 文件中。但我仍然收到此错误。

谁能帮忙解决以下问题?

  1. “源代码管理”部分的用途是什么?
  2. git 尝试使用git ls-remote -h 命令实现什么?
  3. 存储库 URL 和凭据字段如何关联?
  4. 为什么会出现屏幕截图中显示的错误?

【问题讨论】:

    标签: git security jenkins continuous-integration build-automation


    【解决方案1】:
    1. “源代码管理”部分适用于您需要签出(也就是将存储库克隆到 Jenkins 的工作区并在其上进行 ocreastracte)的情况。
    2. git 尝试检查您的存储库的可访问性
    3. 关于 url 和凭据,我强烈建议使用基于 ssh 的 url 进行克隆和 ofc ssh 密钥对而不是凭据。在这种情况下,url 看起来像这样: git clone git@{ip or web address}:{username}/{repository name}.git

    【讨论】:

    • 我不能说是因为我没有看到 git 的 url,只是提一下你尝试使用哪种方式?
    • 正如克隆命令的问题中提到的,我在这个命令中也使用了类似的结构。 username@{ip-address}:/path/to/repo
    • 尝试手动执行与错误消息中相同的命令并查看错误。第二种选择,尝试使用我提到的格式的网址
    • 我做到了,这就是我所观察到的 - [stackoverflow.com/questions/50131377/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-12
    • 2016-04-23
    • 2013-02-20
    • 1970-01-01
    • 2012-08-19
    • 1970-01-01
    相关资源
    最近更新 更多