我试图设置git与http://danielmiessler.com/study/git/#website来管理我的网站。

我已经到了指令的最后一步:git push website +master:refs/heads/master

我正在win7中使用git ming32命令行工作

$ git push website +master:refs/heads/master
Bill@***.com's password:
Connection closed by 198.91.80.3
fatal: Could not read from remote repository.

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

这里的一个问题可能是程序正在寻找bill@* **.com。当我通过ssh连接到我的网站,我有一个不同的用户名(让我们说'abc')。也许这个应该是abc@***。com。如果是这样,我不知道如何改变这一点,或者如果我可以推下一个别名


当前回答

有类似的问题。 我已经通过这条指令(ssh-keygen)生成ssh密钥到我的帐户,或者如果你已经有一个添加它,不生成新的一个。 然后我通过命令shell更改了我的全局凭据,如果你已经克隆了repo,它们也可以在项目根目录中本地更改项目(删除全局标志),但这不是我的情况。 git配置——global user.name“你的姓” Git配置——全局用户。电子邮件“youremail.com”

其他回答

尝试使用未设置的GIT_SSH删除GIT_SSH环境变量。这就是我的问题所在。

我刚刚遇到了这个问题,并通过:git配置用户来解决它。电子邮件“youremail”。


更新: 根本原因可能是我的网络和代理不好。 我仍然不知道为什么会发生这种情况,但每次都有这个错误,这个命令工作!!

在我的情况下,我试图克隆与sudo。根据Github的文档,你不应该使用sudo与git克隆: https://help.github.com/en/github/authenticating-to-github/error-permission-denied-publickey#should-the-sudo-command-be-used-with-git

我所做的是给当前用户编辑目录的权限(Debian 9):

chown myuser:root .

然后克隆没有sudo,它工作。

另一个解决方案:

有时这种情况发生在我身上是因为网络问题。我不完全理解根本问题,但是切换到不同的子网络或使用VPN可以解决这个问题

2020年10月更新

在大多数情况下,当您有多个用户从同一个客户端系统访问同一个git服务器时,该时间git服务器将访问密钥与用户混淆,但当您发出命令时,它将使用默认用户。

ssh -T git@gitlab.com

看看哪些用户是你想要积极推动的用户

简单的解决方案是从git服务器中删除未使用的用户公钥。

然后试着去取或拉,推它会为我工作