ssh克隆不克隆git中的repo
Posted
技术标签:
【中文标题】ssh克隆不克隆git中的repo【英文标题】:ssh clone not cloning repo in git 【发布时间】:2013-08-07 02:11:11 【问题描述】:我想使用 ssh 克隆另一个人的 repo。为此,我做了以下事情:
在本地机器中生成了一个 ssh 密钥。 将密钥添加到必须从中克隆存储库的用户帐户。 通过运行ssh -T git@github.com
测试是否添加了密钥,其输出:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
跑git clone git@github.com:repo/repo.git
。
最后一步输出 Cloning into 'Foldername'... 我可以看到文件夹已创建但文件夹中没有文件。我把它放了 1 个小时,但没有复制任何东西,我还检查了网络,但它工作正常。 我在 windows 上使用 cygwin 来克隆 repo。
我做错了什么?
【问题讨论】:
您是如何生成 ssh 密钥的?您是否将您的公钥添加到您的帐户?您是否尝试过克隆任何小型公共存储库? 是的,我早上用用户名和密码克隆了小仓库,效果很好,但是当我使用 ssh 和 git@github.com:repo/repo.git 进行克隆时,它只是不断给出克隆文件夹名称...我只将公钥添加到远程用户的帐户中,是否需要将密钥添加到我的帐户中? 你一直在说的这个“远程用户”是谁?您是否正在尝试克隆您自己的存储库之一? 对不起,误导性的术语,实际上回购不在我的帐户中,而是在我同事的帐户中。我不能在我的帐户中分叉它,因为它将是公开的。所以我将密钥添加到那个不是我的帐户中。 【参考方案1】:我已经解决了这个问题。问题是由于 Git bash 和 cygwin 的主目录不同而发生的。
当我在我的 cygwin 终端中生成 ssh 密钥时,该密钥被添加到 cygwin 的 .ssh 文件夹,它是 C:\cygwin\home\windows\.ssh
,当我运行命令 ssh -T git@github.com
时,它使用 ssh 密钥对我进行了身份验证位于 cygwin 的 .ssh 目录中。
但是当我运行命令 git clone git@github.com:repo/repo.git
时,使用了 git bash 的主目录 中的密钥,该密钥位于 C:\Users\windows\.ssh
中。我将 cygwin 的 .ssh 文件夹中的密钥复制到该文件夹中,一切正常。
但奇怪的是git clone git@github.com:repo/repo.git
命令没有抛出任何错误,而是直接挂起。
【讨论】:
+1。我最初的回答是关于分叉的“私有”性质的很好的补充。【参考方案2】:我不能在我的帐户中分叉它,因为那样它将是公开的。
不:你 fork 的私人回购......将保持私人状态! 这在“If I fork someone else's private Github repo into my account, is it going to appear in my account as a public repo?”中有详细说明。
因此,如果从您的帐户克隆有效,则分叉您同事的回购可能是一个很好的解决方案。
【讨论】:
【参考方案3】:GitHub is currently experiencing downtime(另见https://status.github.com/),这可能是您的问题:
我们正在调查独角兽的增加。
这是一种幽默的说法,人们在 GitHub 上的页面上得到 404,因为他们的 404 页面上有一只独角兽:
It's not uncommon for GitHub to experience minor/major outages,可能是因为它是如此受欢迎的服务。他们还体验了occasional DDoS attack:
我们目前正遭受大规模 DDoS 攻击。该网站正在经历重大...查看更多信息https://status.github.com/。
【讨论】:
我尝试了 2 天,但无法克隆它。以上是关于ssh克隆不克隆git中的repo的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 GIT 扩展在另一台 PC 中克隆另一个 repo?