SSH在Windows 7上使用生成的密钥推送到Bitbucket

时间:2015-04-22 15:20:36

标签: git ssh bitbucket ssh-keys

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

  1. 我使用puttygen生成公钥和私钥
  2. 使用选美
  3. 添加了私钥
  4. 在〜/ .ssh
  5. 中添加了ssh配置文件
  6. 向bitbucket添加了公钥
  7. 当我尝试执行时:

    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,但问题仍然存在。

    拜托,有人可以解释我做错了吗?

2 个答案:

答案 0 :(得分:1)

以下情况对我有用,

首先将密钥添加到ssh代理

 userprofile = UserProfileSerializer(required=False)

然后,启动ssh-agent

ssh-add path/to/your/privatekey

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

答案 1 :(得分:0)

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

1)使用PuttyGen创建密钥对

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

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

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

5)定义远程git存储库以使用SSH身份验证(git remote add git@bitbucket.org:< accountname> /< reponame> .git)

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