远程:仓库未找到 致命错误:未找到

36

为什么我的 Git push 操作失败?我已经创建了仓库,但是一直收到这个消息:

C:\Users\petey_000\rails_projects\first_app>git push -u github master
Username for 'https://github.com': ***@gmail.com
Password for 'https://***@gmail.com@github.com':
remote: Repository not found.
fatal: repository 'https://github.com/pete/first_app.git/' not found
13个回答

45

您的用户名不应该是电子邮件地址,而应该是您的 GitHub 用户帐户:pete
而您的密码应该是 您的 GitHub 帐户密码(2014年)。

更新于2021年:自2021年8月起,您的密码应该是PAT(个人访问令牌)

实际上,您可以直接在远程 URL 中设置用户名,以便 Git 仅请求密码:

cd C:\Users\petey_000\rails_projects\first_app
git remote set-url origin https://pete@github.com/pete/first_app

在 GitHub 上创建 fist_app 存储库是首要任务:确保完全创建空的存储库,或者如果您使用初始提交(包括一个 README.md 文件、许可证文件和一个 .gitignore 文件)创建它,则在进行 git push 操作之前先执行 git pull


谢谢,问题解决了。我本以为已经设置好了仓库,但实际上没有。虽然我还是可以使用我的电子邮件地址进行推送,但感谢你的提示,现在我知道全输入是愚蠢的。 - Peter Arevalo
再次强调一下:无论您是写成 first_app.git/ 还是 first_app/,git 都会因为斜杠的问题而报错显示 ERROR: Repository not found.。要解决这个问题,只需将其写成 first_app 或者 first_app.git(不带斜杠),然后您就可以顺利进行操作了... - ihadanny
3
我遇到了同样的错误信息,但是使用git remote -v查看仓库名称时,我没有看到末尾的斜杠,但该斜杠在错误信息中显示。有趣的是,git fetch正常工作,但git push失败,并显示“repository 'https://github.com/_/_.git/' not found”(无法找到仓库)。 - Stefan L
@StefanL,你可以尝试使用git remote set-url origin https://github.com/_/_吗?同时确保大小写(大写、小写)是正确的。 - VonC
1
@VonC,我确实尝试了set-url,但没有帮助。但是在我的情况下,我发现我没有对该存储库具有写入权限,我认为这是根本原因,那么只有得到错误消息才是合乎逻辑的,但是我期望另一种错误消息。 - Stefan L
1
请注意,即使一切设置正确,如果您没有推送权限,您仍将收到此确切错误。为以后参考,请记住这一点。 - pmoleri

34
如果这个问题出现在Windows机器上,请执行以下操作:
  • 进入凭据管理器
  • 进入Windows凭据
  • 删除"通用凭据"下的条目
  • 再次尝试连接。 此时,它应提示您输入正确的用户名和密码。

控制面板

输入图像描述


这是对我有效的答案。在Windows 10上使用git版本2.34.1.windows.1。我的问题是,我可以使用GitHub桌面客户端执行所有git操作,但通过命令行执行它们也会导致“fatal: repo not found”错误。在删除Windows凭据下的所有git凭据后,现在我两者都可以做到了。 - InvalidBrainException

14

三件事情:

  1. 你的 GitHub 用户名不是一个电子邮件地址。它应该是一个用户名(比如 "sethvargo")。
  2. 你在你的仓库名称后面添加了一个斜杠:

    $ git remote rm origin
    $ git remote add origin https://github.com/pete/first_app.git
    
  3. 你需要创建名为 first_app 的仓库。我在 GitHub 上查看了 "pete",但没有找到这个仓库。在推送之前,你必须先创建远程仓库。


2
这正是我的答案,只不过remote set-url避免了remote rm+remote add... - VonC
2
有趣。我不知道remote set-url,谢谢!你的回答没有提到尾随斜杠,我认为这才是真正的问题所在。虽然没有足够的信息来确定。 - sethvargo
可能末尾的斜杠不是真正的问题,我遇到了同样带有末尾斜杠的问题,后来发现我没有推送权限。即使在推送URL中不存在末尾斜杠,错误消息中也会添加它。 - pmoleri

6

在我的情况下,有些不同!但我认为分享我的经验可能会对某些人有所帮助!

在MAC上,“钥匙串访问”已保存了我的以前的“Github”密码。我正在尝试使用一个新的GitHub存储库,但它从未工作过。当我从我的MAC机器的“钥匙串访问”中删除旧的GitHub密码时,它就起作用了!我希望它能帮到某些人。


你的情况可能会得到不同的错误信息? - tomsv
这对我在我的 Mac 上起作用了。启动台 > 钥匙串 > 搜索 "Github" > 编辑用户名和访问令牌 (在密码空间内) 为您的新 Github 帐户。由于我的工作组织拥有/维护 Mac,我无法删除该条目,但我可以编辑它。只要我替换了帐户详细信息并在 VSCode 中再次运行 git clone <url> 命令,它就起作用了。请注意,自2021年8月以来,密码身份验证已被弃用。因此,您需要使用访问令牌,在 Github.com 用户设置页面中生成,以取代密码。 - pythonInRelay

4
请查看以下适用于Windows的工作解决方案: 这对我起作用了。 1 从开始菜单中打开控制面板。 2 选择用户帐户。 3 选择“凭据管理器”。 4 点击“管理Windows凭据”。 5 删除与Git或GitHub相关的任何凭据。 6 删除所有凭据后再尝试克隆。

1
谢谢!我有两个Github账户,第一次登录时可以正常工作,因为Git客户端请求我的凭据。当我尝试使用另一个Github账户上传不同的项目时,我看到了“fatal: repository 'https://github.com/TddfaLucfasfd' not found”的消息。我按照您的指示再次尝试,这样Git客户端就会请求新的凭据。 - Luis Armando

3
这个答案有点晚,但我仍希望它能对某些人有所帮助。
在我的情况下,这是因为存储库已经移动了。我重新克隆项目后,一切都恢复正常了。更好的方法是重新初始化 Git。
希望这可以帮到你..愉快地编码!

3

2021年底更新

GitHub在2021年8月进行了一些身份验证流程的更改。我也遇到了同样的问题,但是通过以下步骤成功将一个新项目推送到GitHub:

echo "# REPO_NAME" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://USERNAME:ACCESS_TOKEN@github.com/USERNAME/REPO_NAME.git
git push -u origin main

原始 URL 必须紧跟着用户名和访问令牌。

你可以通过前往 Github > 设置 > 开发者设置 > 个人访问令牌 > 生成新的令牌 来生成 ACCESS_TOKEN。给它一个名字,并确保在 选择范围 中选择 仓库

我个人认为这有点过于复杂了。令牌有有效期,现在我必须管理每个项目的令牌。也许有更简单的方法,但我不知道希望如此。我的 VS Code 已经通过 Github 进行了身份验证,为什么要把事情搞得这么复杂呢?也许有人能演示一种更简单的方法。


3

我通过在Github帐户中授予读取权限解决了相同的问题。

  1. 进入Github帐户并赋予用户读取权限。
  2. 当我们克隆代码时,我们需要读取权限。
  3. 当我们需要推送代码时,我们使用写权限,因此您需要给予写权限。

2

请确保您的git用户名和密码正确。在我的情况下,当用户名和密码(特别是GIT令牌)不正确时,会出现错误。


Please write it as comment. - Virb

1

我遇到了完全相同的错误信息。当我运行ls -a时,我发现缺少.git目录(显然我在前几天无意中删除了它)。由于我本地的内容与Github存储库中的内容相同,所以我只需删除本地的"文件夹"并再次克隆远程文件夹即可。之后,一切都正常工作:

rm -rf my_project
git clone https://github.com/begueradj/my_project.git

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接