【问题标题】:SSH push to Bitbucket using generated keys on Windows 7在 Windows 7 上使用生成的密钥 SSH 推送到 Bitbucket
【发布时间】:2015-04-22 15:20:36
【问题描述】:

我关注 Bitbucket 网站上的文档,并希望通过 ssh 将现有项目推送到远程存储库。我在 CMD 中执行了下一步:

  1. 我使用 puttygen 生成了公钥和私钥
  2. 使用 pageant 添加了私钥
  3. 在 ~/.ssh 中添加了 ssh 配置文件
  4. 为 bitbucket 添加了公钥

当我尝试执行时:

git push -u origin --all

我得到堆栈跟踪:

Enter passphrase for key 'k:\path\private_work_key.ppk':
Enter passphrase for key 'k:\path\private_work_key.ppk':
Enter passphrase for key 'k:\path\private_work_key.ppk':
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

我什至将公钥添加到 ~/.ssh/authorized_keys ,但问题仍然存在。

拜托,谁能解释一下我做错了什么?

【问题讨论】:

    标签: git ssh bitbucket ssh-keys


    【解决方案1】:

    以下方案对我有用,

    首先将密钥添加到您的 ssh 代理,

    ssh-add path/to/your/privatekey
    

    然后,启动 ssh-agent

    ssh-agent
    

    现在尝试将您的项目推送到您的存储库中。

    【讨论】:

    • 我执行了这一步:使用 pageant(PuTTY 的 SSH 身份验证代理)添加了私钥
    • 你可以试试ssh-add -l,看看你的ssh key是否被添加到ssh-agent中?
    • 看起来很奇怪,在我看来,一个 ssh-agent 看不到身份是由另一个 ssh-agent 添加的(GitBush 的默认设置)。我的私人格式也有问题。我有 .ppk 格式的私钥,并且总是遇到与密码错误有关的异常。
    【解决方案2】:

    我在使用 WIN7x64 时遇到了“权限被拒绝(公钥)”的问题。这是一个让它工作的简短列表,最重要的是 plink.exe 的使用!

    1) 使用 PuttyGen 创建密钥对

    2) 将公钥存储到 Bitbucket(管理帐户/SSH 密钥)

    3) 更改使用的 BitBucket 存储库以使用 SSH 身份验证

    4) 使用 Windows Pageant 作为 SSH 身份验证代理

    5) 定义远程git仓库使用SSH认证(git remote add git@bitbucket.org :/.git)

    6) 将 GIT_SSH=plink.exe 定义为 Windows shell 变量。现在 git push/pull/etc 命令正在通过 SSH 授权

    【讨论】:

      猜你喜欢
      • 2013-06-22
      • 1970-01-01
      • 2016-08-17
      • 1970-01-01
      • 2015-03-26
      • 2017-04-30
      • 2019-05-21
      • 2015-04-06
      • 2019-05-16
      相关资源
      最近更新 更多