从之前的提交中在GitHub上fork一个仓库

46

我在GitHub上找到了一个仓库,我想要fork它 - 但不是当前版本。

我想要fork该仓库的某个较早的提交记录 - 这是否可行?该仓库没有标记任何发布版本,因此我不确定如何操作。我当然可以复制那个提交记录的代码,但我更愿意fork,这样我就可以获得对原始仓库的链接。


7
为什么不进行分支并从之前的版本创建一个分支? - Frank Osterfeld
@Frank 我想是这样的...我只想在主分支上工作,因为分支将成为主要版本,而主分支将变得无意义。 - ACarter
我基本上希望我的整个分支就是分支... - ACarter
1
你可以重命名主分支并创建自己的分支。 - kapex
对你的代码库进行奇怪的操作会阻止你以后拉取上游更改并发送回拉取请求。我不认为这样搞有什么意义。 - Frank Osterfeld
2个回答

48

你只能复刻当前存储库。

然而,你可以将复刻的存储库主分支重置到一个较早的提交点上,使其看起来像是在那个时间点上复刻的。

详情请见:如何将 GitHub 存储库回滚到特定提交?

如果你重置了所有分支,它实际上会将你的存储库恢复到原始存储库的一个更早状态(除了与分支无关的数据,例如配置、钩子等不会被重置)。由于不是所有分支都包含主分支的提交,你可能需要为每个分支按日期查找提交,将它们重置到你想要复刻的提交之前的最后一个提交。


0

我之前尝试使用Github进行操作,但是Sourcetree完美地解决了这个问题。

切换到所需的分支。 找到我想要作为新分支头部的提交并右键单击。 选择“分支”。 我的提交已经被选中。 命名这个新分支,创建并推送。

也可以通过选择“分支”按钮来完成此操作。 然后选择您想要作为新头部的提交,给它一个名称并创建它。


2
“branch” 不同于 “fork”。分支在仓库内;而 fork 是整个仓库的副本。 - charles-allen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接