我在GitHub上有一个公共存储库。我想复制/复制它,并在基于这个存储库的新项目上工作,但我不想影响它现在的情况。我尝试使用GitHub UI分叉,但它没有做任何事情。


当前回答

我遵循了“复制存储库”的官方说明,它似乎起作用了。

https://help.github.com/articles/duplicating-a-repository/

要在没有分叉的情况下创建存储库的副本,需要对原始存储库运行一个特殊的clone命令,并将镜像推到新存储库。这适用于任何git存储库,而不仅仅是托管在GitHub上的存储库。

其他回答

我遵循了“复制存储库”的官方说明,它似乎起作用了。

https://help.github.com/articles/duplicating-a-repository/

要在没有分叉的情况下创建存储库的副本,需要对原始存储库运行一个特殊的clone命令,并将镜像推到新存储库。这适用于任何git存储库,而不仅仅是托管在GitHub上的存储库。

一步一步

首先,您应该创建一个访问令牌

然后:

导入现有的存储库

在这里:

为新的存储库输入一个名称

现在是重要的一步

在密码块中,您必须输入您生成的访问令牌

虽然你不可能将自己的回购账户存入同一个账户, 它可以进入自己拥有的组织帐户,可以通过“+”按钮轻松免费创建。

这个选项的主要优点是,新的回购是原来的一个真正的分支,而不仅仅是一个克隆。 这意味着,例如,您可以将原始回购中的更改更新到新的回购中(对于克隆的回购则不是这样)。

我看到的唯一缺点是,分叉回购不会出现在用户配置文件下,而是出现在组织配置文件下。

要达到预期效果,最简单的方法是创建一个新的存储库,然后选择导入选项并提供您希望派生的回购的URL。

下面的图片会有所帮助:

通过import-1 Fork自己的回购

通过import-2 Fork自己的回购

在github web前端创建一个新的空回购 在旧的repo的克隆中,替换远程并推送:

git remote remove origin
git remote add origin git@github.com:account/new.git
git branch -M main
git push -u origin main

这结合了@mcepl的答案和@wadesworld的评论,非常类似于在github上创建一个新的存储库时所显示的官方解决方案(标题为“…或从命令行推送一个现有的存储库”)