我有一个非常奇怪的问题与git和github。当我试着推的时候,我得到:

git push -u origin master
ERROR: Repository not found.
fatal: The remote end hung up unexpectedly

我添加了遥控器:

git remote add origin git@github.com:account-name/repo-name.git

什么好主意吗?


当前回答

我通过Github重新认证解决了这个问题。

如果你有Github CLI,你可以输入gh auth登录

其他回答

我可以解释我是如何陷入类似的情况,然后列出我已经采取的步骤来解决这个问题。

我在用 Windows 10, Git: Git版本2.27.0.windows.1。

我已经安装了git,正在做git推送活动。Windows凭据管理器存储用户名和密码,所以你不必每次git远程活动都输入用户名和密码。

遇到这个问题,当我添加了另一个github帐户和使用——本地git设置。几天后,我遇到了存储库找不到的问题,经过调查我发现:

即使你从Windows凭证管理器中删除了git详细信息,它也会再次保存你输入的用户名、电子邮件详细信息。

因此,如果您使用两个git帐户,则需要使用(以管理员身份使用git bash)

git config --edit --system 

然后移除

helper = manager 

行,使其不再注册为凭据帮助器。但是每次你进行远程活动时,它都会询问你登录的详细信息。

如何禁用Git凭证管理器的Windows?

检查远程源、用户详细信息

git config --list --show-origin

我试了所有的办法,但似乎都不管用。进一步的研究表明:

这里有一个解决问题的综合方法。 当你数到5。修复4,注意VS代码会要求认证。

如果您输入了密码,仍然得到身份验证错误,请执行以下操作。

转到你的GitHub菜单做设置->开发人员设置->个人访问令牌->生成新的令牌。并确保这些框都是按照下图选中的。生成一个访问令牌并将其保存在可访问的地方。 使用生成的令牌而不是密码。 然后继续执行步骤6。修复5

这些步骤可以在事后解决问题。

Github于2021年8月13日删除了用户名和密码的使用。现在改用个人代币

要克服这一点,请使用create personal token生成个人令牌。并使用下面的代码片段来实现推送和克隆功能。

推动

git remote remove origin
git remote add origin https://[USER]:[TOKEN]@github.com/[USER]/[REPO]
git push

克隆

git clone https://[USER]:[TOKEN]@github.com/[USER]/[REPO]

如果你的repo之前工作正常,突然弹出这个错误,最有可能的原因是你的git被认证为其他用户,没有访问存储库的权限。因此,为了进行推送,您所需要做的就是在git命令中指定正确的用户名和密码。所以,一个github回购的推命令看起来像:

git push https://youruser:password@github.com/user/reponame.git

用户名和密码需要进行url转义,因此@应该被%40取代,等等。

我在一台MAC上遇到了同样的问题,试图从我以前连接到的一个私人回购中提取。

我通过在回购url中包含我的用户名来解决这个问题:

git remote set-url origin https://<YOUR_USER_NAME_HERE>@github.com/<YOUR_USER_NAME_HERE>/<REPO>.git

然后我从回购中提取了数据。

对于一个你想克隆的新回购:

git clone https://<YOUR_USER_NAME_HERE>@github.com/<YOUR_USER_NAME_HERE>/<REPO>.git    

它会提示你输入那个账户的密码,然后你就可以去了。