GitKraken推送错误:SSH无法写入数据

时间:2018-05-04 09:59:09

标签: git version-control gitkraken

尝试在GitKraken中推送更改时出现错误(如下所示)。

enter image description here
这是一个分叉的项目,我过去能够完美地推进。自上次以来发生的变化是我已经从远程分支(原始仓库)中提取并合并了更新。

之前有没有遇到过这个?有什么想法停止推动?

由于

5 个答案:

答案 0 :(得分:2)

没有足够的代表来评论@Sam的帖子,但是如果您使用GitKraken遇到SSH和AWS Codecommit的问题,或出现任何SSH could not read/write data:错误,则可以强制GitKraken使用您的AWS用户名

首先确保gitkraken已关闭,以防万一!

在以下位置找到存储库的git文件:repo-root/.git/config。在您喜欢的文本编辑器中打开它,记事本就可以正常工作!

在描述[remote "origin"]的部分下,您应该看到url = ...。确保显示为:url = ssh://YOUR_AWS_KEY@git-codecommit.us-west-2.amazonaws.com/v1/repos/YOUR_REPO_NAME

确保URL正确的一种简单方法是进入代码提交,查看您的存储库,然后单击所需存储库旁边的“ SSH”链接。它将该仓库的SSH URL复制到剪贴板。然后,只需在ssh://之后和git-codecommit之前添加“ YOUR_AWS_KEY @”。

主要说明:确保URL以ssh://开头,然后是ssh密钥ID,然后是@,然后确保URL的结尾不是'。 git”或gitkraken引发“无效的存储库URL”错误!

此处,“ YOUR_AWS_KEY”是查看安全凭证时在AWS IAM中找到的“ SSH密钥ID”。确保它是您当前计算机的SSH密钥之一!

答案 1 :(得分:1)

因此,如果答案对像我这样的其他人没有帮助,我会弄清楚。

  1. 制作新的ssh密钥。
  2. https://www.ssh.com/ssh/putty/download安装li PuTTY工具
  3. 运行PuTTYgen。
  4. 在“转化”标签下,选择导入密钥,然后选择您的私钥。
  5. 保存私钥。
  6. 在工具栏中(接近时钟)双击Pageant。
  7. 添加我们刚刚创建的私钥。
  8. 在gitkraken中的“ preferences / Authentication / Bitbucket.org”下,连接到位存储桶,然后按下两个蓝色按钮,这将添加您的私有/公共ssh密钥(不是我们用PuTTY制作的那个,是腻子密钥) )。
  9. 将公钥添加到您的Bitbucket帐户。

您应该一切顺利!

答案 2 :(得分:0)

似乎推动其他机器的更改似乎是“冲洗”。通过提交。不同的机器成功地推动了变化,在这样做之后,原始机器也可以再次推动。

希望这种解决方法可以在将来帮助某人。

答案 3 :(得分:0)

在将SSH与AWS Codecommit和GitKraken结合使用时遇到了这个问题,我不得不将用户名(IAM中的aws ssh密钥ID)添加到SSH URL中,如下所示:

ssh://username@git-codecommit.eu-west-1.amazonaws.com/v1/wibble/

克隆是很好的,因为它提示输入用户名,但是在尝试拉入或推入时没有提示并失败,并显示无法读取/写入错误

答案 4 :(得分:0)

@Sam 和 @Jasper36 的答案适用于 GitKraken,但当您再次尝试从 cli 中提取时会打开一个新问题。

  1. 要允许 GitKraken 访问 git,请打开 my-project/.git/config 并将您的源网址修改为 url = ssh://username@git-codecommit.eu-west-1.amazonaws.com/v1/wibble/
  2. 要让您的终端再次访问 git,请运行以下命令:ssh-add ~/.ssh/{my-wibble-key_rsa}

此示例适用于 AWS 代码提交集成,但相同的主体适用于与所有形式的 ssh 客户端的 ssh 连接。