我在GitHub上有一个公共存储库。我想复制/复制它,并在基于这个存储库的新项目上工作,但我不想影响它现在的情况。我尝试使用GitHub UI分叉,但它没有做任何事情。
当前回答
我不认为你能支付自己的回购。 克隆它并将其推到一个新的回购是很好的,但你需要:
git clone https://github.com/userName/Repo New_Repo
cd New_Repo
git remote set-url origin https://github.com/userName/New_Repo
git remote add upstream https://github.com/userName/Repo
git push origin master
git push --all
(见git push)
参见“在GitHub上Fork你自己的项目”中描述的所有过程。
六年后(2016年),你现在有了GitHub导入器,它允许你从另一个来源导入回购…包括GitHub。 参见“使用GitHub Importer导入存储库”
Narf的回答(被点赞)也说明了这个过程。
这将允许您创建一个新的存储库,并使用其GitHub url将旧存储库的完整历史导入到新的存储库中。
同样:你得到的是一个副本,而不是一个真正的fork:你不能从新的回购向旧的回购发出拉请求。
再次(二),正如mpersico的评论所述,这不是一个真正的FORK。
如果我有一个foo,它是一个开源项目的标准源代码回购,我想让其他人分叉并有权做PR,那么我不想在那个回购中工作,我想要一个我可以用来对我的项目发布适当的PR的分叉。 我已经解决了这个问题,我在GitHub中创建了第二个帐户,并将其分叉。
其他回答
现在,您可以将基本存储库标记为模板(在设置中,将其标记为模板存储库),并在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。 就是这样!你现在有了一个完整的副本,包括所有的提交历史和分支!
局限性:它实际上不是一个真正的叉子。这是一份回购合同的副本。它不允许来回拉请求。
一步一步
首先,您应该创建一个访问令牌
然后:
导入现有的存储库
在这里:
为新的存储库输入一个名称
现在是重要的一步
在密码块中,您必须输入您生成的访问令牌
要达到预期效果,最简单的方法是创建一个新的存储库,然后选择导入选项并提供您希望派生的回购的URL。
下面的图片会有所帮助:
通过import-1 Fork自己的回购
通过import-2 Fork自己的回购
对于使用GitHub的非技术人士,这里有一个简单的解决方案,作为上述其他优秀答案的替代方案。你需要的只是一个GitHub桌面应用程序。
从浏览器打开您自己的项目回购,并下载压缩文件,如your-project-master.zip。 解压缩并将其重命名为新的repo。 打开GitHub桌面,并通过浏览它添加您的新repo到您解压缩的本地路径new repo。 发布到你的github,通过点击发布按钮。别忘了加上名字和描述:)
推荐文章
- 为什么调用git分支——unset-upstream来修复?
- Windows git“警告:LF将被CRLF取代”,这是警告尾巴向后吗?
- git中的哈希冲突
- git可以自动在空格和制表符之间切换吗?
- Git暂存文件列表
- 在Markdown Jekyll中使用图像说明
- 如何将git配置存储为存储库的一部分?
- 如何修改GitHub拉请求?
- 如何在Github和本地删除最后n次提交?
- 我如何调试git/git-shell相关的问题?
- 错误:无法使用rebase进行拉取:您有未分阶段的更改
- Git隐藏未缓存:如何把所有未分期的变化?
- 如何将文件附加到GitHub问题?
- 真实的恶魔
- 如何从另一个分支获得更改