如何在GitHub上建立自己的存储库?
我在GitHub上有一个公共存储库。我想复制/复制它,并基于此存储库处理一个新项目,但我不想影响它现在的状态。我尝试使用GitHub UI进行分叉,但它没有做任何事情。只需克隆它,创建新的空白回购,然后推到它。我认为你无法分叉自己的回购。如何在GitHub上建立自己的存储库?,git,github,version-control,git-fork,Git,Github,Version Control,Git Fork,我在GitHub上有一个公共存储库。我想复制/复制它,并基于此存储库处理一个新项目,但我不想影响它现在的状态。我尝试使用GitHub UI进行分叉,但它没有做任何事情。只需克隆它,创建新的空白回购,然后推到它。我认为你无法分叉自己的回购。 克隆它并将其推送到新的回购协议很好,但您需要: git clone https://github.com/userName/Repo New_Repo cd New_Repo git remote set-url origin https://github.c
克隆它并将其推送到新的回购协议很好,但您需要:
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
(见附件)
请参阅“”中描述的所有流程
六年后(2016年),您现在拥有了允许您从另一个来源导入回购的。。。包括GitHub。
见“ 这也说明了这一过程 这将允许您创建一个新的存储库,并使用其GitHub url将旧存储库的完整历史导入新存储库 再次强调:你得到的是一份副本,而不是真正的fork:你不能从新回购协议向旧回购协议发出拉取请求 同样(bis),如所述,这不是一个真正的FORK 如果我有一个foo,它是一个开源项目的规范源代码回购协议,我希望其他人能够提供该协议,并有权进行PR,那么我不想在该回购协议中工作,我想要一个可以用来针对我的项目发布适当PRs的协议。
我在GitHub中创建了第二个帐户并开始着手解决这个问题
刚刚试过这个,它成功了:
我按照这些“复制存储库”的官方指示进行操作,它似乎起到了作用 要在不分叉的情况下创建存储库的副本,需要对原始存储库运行一个特殊的clone命令,然后镜像推送到新存储库。这适用于任何git存储库,而不仅仅是托管在GitHub上的存储库
不幸的是,VonC的公认解决方案对我来说并不适用 远程:未找到存储库 工作内容如下:
我从中获得了以上所有信息。实现所需效果的最简单方法是创建一个新的存储库,然后选择导入选项并提供您希望分叉的回购的URL 以下图片将有助于:
对于使用GitHub的非技术人员,这里有一个简单的解决方案,可以替代上面的其他优秀答案。您需要的只是一个GitHub桌面应用程序
您的project master.zip
创建新回购协议时,可以使用repo.git url从另一个回购协议导入。这花了我30秒。从GitHub网站上用30秒的时间完成这项任务非常简单:
https://github.com/YourName/YourOldRepo
(提示:当您在github上查看回购协议主页时,它是URL+
图标。开始导入
限制:它实际上不是一个真正的fork。它是repo的副本。它不允许来回拉取请求。您现在可以将基本存储库标记为模板(在“设置”中,将其标记为模板存储库),并在repo的主页上,单击“使用此模板”创建第二个repo
Github帮助:虽然您不可能将自己的回购交易转入同一个帐户, 可以将其存入自有组织帐户,通过“+”按钮可以轻松地免费创建该帐户 这一方案的主要优点是,新回购协议是原始回购协议的真正分支,而不仅仅是克隆。 例如,这意味着您可以将原始回购协议中的更改更新为新的(克隆回购协议的情况并非如此) 我看到的唯一缺点是分叉回购不会出现在用户配置文件下,而是出现在组织配置文件下
这结合了@mcepl的答案和@wadesworld的注释,与在github上创建新存储库时显示的官方解决方案非常相似(标题为“…或从命令行推送现有存储库”)你到底想实现什么?也许你可以通过分支来解决它?我想得到一份项目的副本,并扩展该项目以做其他事情,但不影响原始项目。就是这样。不管怎样,都解决了。@Artefact2..对不起,我以为mcepl的解决方案解决了我的需要,但它没有。在我克隆了该项目之后使用“git clone”,我不想指向原始的回购协议,而是指向我在github上创建的一个新回购协议。我如何才能做到这一点?@Artefact2你明白我的问题了吗?与创建一个新回购协议相比,fork的好处在于图表和网络历史是链接在一起的。很遗憾github不允许这样做。谢谢。我想得太多了.我把它克隆到我的本地机器上,创建了一个空白的repo,但是,当我尝试git origin时..它说远程origin已经存在。我应该如何解决这个问题?现在呢
git remote remove origin
git remote add origin git@github.com:account/new.git
git branch -M main
git push -u origin main