3

我的“Codenvy git config”没问题(可以通过菜单推送:git > remote > push)。

现在我想通过命令配置“推送”。

我尝试了一个简单的“git push”,但它要求输入登录名/密码。

设法做到这一点:

git push https://login:pwd@myrepo.git

但是在命令行中有明确的密码并不是一个好主意。

如何使用我的 ssh 密钥在 codenvy 中执行此命令?

4

4 回答 4

1

这仅适用于 GITHUB!

如果您想使用 ssh,则必须为您的帐户设置 ssh 密钥和密码。检查现有密钥

$ ls -al ~/.ssh

键将具有以下名称之一:

id_dsa.pub

id_ecdsa.pub

id_ed25519.pub

id_rsa.pub

如果您没有现有密钥,请生成一个:

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]

然后将您的密钥添加到 ssh-agent

$ eval "$(ssh-agent -s)"
Agent pid 59566
$ ssh-add ~/.ssh/id_rsa

然后将您的密钥添加到 GitHub

$ sudo apt-get install xclip
# Downloads and installs xclip. If you don't have `apt-get`, you might need to use another installer (like `yum`)

$ xclip -sel clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard

如果 xclip 不起作用,则只需使用您喜欢的文本编辑器打开文件并使用默认的复制/粘贴工具来复制密钥。

登录 GitHub,单击您的个人资料图片,然后单击设置。在右侧,单击 SSH 和 GPG 密钥。然后单击新建 SSH 密钥,输入描述性标题,将公钥粘贴到密钥字段并提交。

要测试您的连接,请打开您的终端,然后输入

ssh -T git@github.com

您应该看到其中之一:

The authenticity of host 'github.com (192.30.252.1)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?

或者

The authenticity of host 'github.com (192.30.252.1)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?

输入是。然后你应该看到:

Hi username! You've successfully authenticated, but GitHub does not
provide shell access.

您现在可以使用您的 ssh 密码推送到 GitHub :)

编辑:我也使用 codenvy,这对我来说非常有效。另请参阅本指南:使用 SSH 连接到 GitHub

于 2017-01-31T13:55:03.787 回答
1

Codenvy 基于 Eclipse Che,并从该开源项目中借用其 git 交互。您可以在此处找到有关添加凭据的文档:https ://eclipse-che.readme.io/docs/git#ssh-key-management

但简短的回答是,您可以通过 IDE 的 Profile > Preferences 菜单将您的凭据添加到您的 Codenvy 帐户中。

于 2016-12-08T14:39:42.450 回答
1

在 .git/config 中将远程 repo URI 更改为 ssh,或者更改使用 git 命令。

git remote set-url origin sshAddress

详细看这里

于 2016-12-08T03:03:36.480 回答
1

这取决于您的远程仓库(从您的 CodeEnvy 云会话访问)是否支持注册公共 ssh 密钥。

您首先需要在您的 CodeEnvy 帐户中生成一个 ssh 私有/公共密钥对(在 中~/.ssh
,如此CodeEnvy 论坛主题(谈到远程 AWS 存储库)中所述,您需要注册您的公共密钥。

只有这样,ssh url 才不会询问用户名/密码(这是 ssh 找不到公钥时的回退机制)

对于 http,如果 CodeEnvy 支持,您可能需要尝试一个凭证助手。

于 2016-12-08T05:56:56.517 回答