带有https错误的git clone - 致命:找不到存储库

时间:2017-02-24 18:21:33

标签: git github https git-clone

我分叉了一个私有存储库,我被邀请进行协作,但每次尝试使用HTTPS克隆时,都会收到以下错误消息:

$ git clone https://github.com/usernamex/privat-repo.git
cloning into 'privat-repo'...
Username for 'https://github.com':usernamex
Password for 'https://usernamex@github.com':
remote: Repository not found.
fatal: repository 'https://github.com/usernamex/privat-repo.git/' not found

Note: 'usernamex' and 'privat-repo' are just examples

以下是我尝试过的一些没有成功的事情:

  • 验证了网址的有效性 - 已检查的拼写和案例。我可以通过单击download ZIP按钮访问repo URL并通过浏览器下载其内容。
  • 要求老板克隆我的叉子 - 他克隆我的叉子没有问题,但是我做了。
  • 联系GitHub支持......
  • Per GitHub支持,cleared cached credentials - 系统需要git clonegit push的用户名和密码才能确认这一点。事实上,我可以在我的帐户中克隆并推送其他(公共)存储库。
  • 通过GitHub的HTTPS Cloning Errors指南,但“使用SSH代替”除外,因为这并没有真正解决问题。
  • 在stackoverflow.com中查看了类似的问题 - 尝试了大多数建议的答案(见上文)。

我通过终端在mac上运行git 2.10,正如我所提到的,我对HTTPS的解决方法不感兴趣(例如:SSH或GitHub桌面)。

为什么会发生这种情况?

4 个答案:

答案 0 :(得分:17)

This Github document读到:

  

所有存储库(公共和私有)都可以使用https://克隆URL。

但是,由于您尝试访问私有存储库,因此需要进行身份验证。一种方法是在地址上附加用户名和密码,如下所示:

git clone https://username:password@github.com/usernamex/privat-repo.git

same page读到:

  

如果启用了双因素身份验证,则必须创建个人访问令牌,以便在使用HTTPS URL在命令行上对GitHub进行身份验证时用作密码。

如果您启用了2FA,请检查this page以了解生成个人访问令牌的步骤。请记住,您应该检查个人令牌的完整repo范围(如下所示)。

enter image description here

答案 1 :(得分:0)

如果您尝试从您获得授权的帐户以外的帐户(如果它是其他人的存储库)克隆存储库并且它来自 https url,请更改 https:// http:// 的克隆命令部分。 Bash 会自动将请求改回 https,就像魔术一样,repo 将成功克隆。我在 Windows 上遇到了这个问题(通过 git Windows 安装附带的 mingw64 git bash 终端/cli。) 我尝试通过 https url 进行克隆并不断收到此响应:

<块引用>

$ 致命:未找到存储库“https://github.com/random-user/random-repo.git/”

我尝试了上述所有建议,但没有任何效果。最后,我尝试从 url 中删除“s”,得到以下响应:

<块引用>

$ git clone http://github.com/random-user/random-repo.git 克隆到“RomanianCoderExamples”... 警告:重定向到 https://github.com/random-user/random-repo.git/ 远程:枚举对象:175,完成。

顺便说一下,上面的链接是自动添加的,几乎可以肯定不起作用。如果他们这样做,有人真的需要重新考虑他们的命名方案

答案 2 :(得分:0)

如果给定的 URL 是正确的,还应该调查这一点,它可能与一些已经保存在系统上的 git 凭据有关:

Git - remote: Repository not found

答案 3 :(得分:0)

虽然这可能不适用于您的特定实例 - 这可能会帮助遇到相同问题的另一个人。

仔细检查您当前在终端中的位置。如果您在尝试克隆操作之前一直在设置和删除文件,那么您可能不小心将当前位置目录移动到垃圾箱。终端不会立即显示此信息,但是如果您在文件层次结构中向上跳一级(通过 'cd ..' 命令),那么您可能会看到您突然位于 '.Trash'

这种情况下的解决方案是导航回干净的工作文件夹并重试 git clone 命令。