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


当前回答

对于使用GitHub的非技术人士,这里有一个简单的解决方案,作为上述其他优秀答案的替代方案。你需要的只是一个GitHub桌面应用程序。

从浏览器打开您自己的项目回购,并下载压缩文件,如your-project-master.zip。 解压缩并将其重命名为新的repo。 打开GitHub桌面,并通过浏览它添加您的新repo到您解压缩的本地路径new repo。 发布到你的github,通过点击发布按钮。别忘了加上名字和描述:)

其他回答

在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上创建一个新的存储库时所显示的官方解决方案(标题为“…或从命令行推送一个现有的存储库”)

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

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

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

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

下面的图片会有所帮助:

通过import-1 Fork自己的回购

通过import-2 Fork自己的回购

现在,您可以将基本存储库标记为模板(在设置中,将其标记为模板存储库),并在repo的主页面上,单击使用此模板创建第二个repo。

从模板创建一个存储库类似于分支一个存储库,但有重要的区别[1]:

新的fork包含父存储库的整个提交历史,而从模板创建的存储库则从单个提交开始。[1] 向fork提交的文件不会出现在你的贡献图中,而向模板创建的存储库提交的文件会出现在你的贡献图中 fork可以是向现有项目贡献代码的临时方式,同时从模板创建存储库可以快速启动新项目

Github帮助:创建模板存储库从模板创建一个存储库

在GitHub网站上,一个超级简单的方法可以在30秒内完成:

复制你的回购URL。例如:https://github.com/YourName/YourOldRepo(提示:这是你在github上查看你的回购主页时的URL。 单击右上角的+图标。 选择“Import repository”。 在哪里,它要求“旧URL”,粘贴你在第1步复制的URL 输入新回购的名称并单击Begin Import。 就是这样!你现在有了一个完整的副本,包括所有的提交历史和分支!

局限性:它实际上不是一个真正的叉子。这是一份回购合同的副本。它不允许来回拉请求。