dqh1984 2019-07-26 15:48
浏览 607

代理密钥RSA SHA256:…返回了错误的签名类型

I'm trying to use CircleCI on a Go project on GitHub with the default template for Go projects.

For reference, here's what the default .circleci/config.yml looks like :

version: 2
jobs:
  build:
    docker:
      - image: circleci/golang:1.12.7-buster
    working_directory: /go/src/github.com/Permaweb/Host
    steps:
      - checkout
      - run: go get -t -u -v ./...
      - run: go test -v ./...

When the job runs, I get an error that's totally unrelated to the code itself.

agent key RSA SHA256:L1iUIhjfKejEONe0TFU3TaWkNwE2O0xWF/09K7P8WnA returned incorrect signature type
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> develop

The error happens during a git pull on CircleCI on a branch that's different from master.

How can I fix this?

  • 写回答

1条回答 默认 最新

  • dongxiji0687 2019-07-28 03:24
    关注

    There are two issues here, which are separate and independent.

    The "agent key returned incorrect signature type" warning means that the SSH agent that's being used returned invalid data.

    When you use an RSA SSH key, you can sign with one of several hash algorithms: SHA-1, SHA-256, or SHA-512. Originally, only SHA-1 was supported, and so every use of an RSA key implied that you were using SHA-1. However, SHA-1 is weak, so additional, stronger hash algorithms were added.

    This message means that the SSH connection negotiated a connection using an RSA key with a different signature algorithm, either SHA-256 or SHA-512. However, the SSH agent, when asked to make the signature for that connection, provided an SHA-1 signature, which isn't in compliance with the agent protocol.

    This message isn't intrinsically fatal, although the remote side may choose to reject your connection if it doesn't support SHA-1 signatures.

    The other message you're seeing, the message from Git, means that you're trying to perform a git pull command without having a remote for that branch set up. In this case, that's because you're using go get on an existing repository, since that command will attempt to update the existing repository.

    If you just want to install dependencies, running go build will usually do that automatically for you, so there's no need to run go get specifically for that purpose. If you need something more complex, then you should use Git itself for that, since go get is not designed to be used in complex situations.

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题