Git 分叉实际上是 Git 克隆吗?

问题描述

,在 GitHub 上下文中,不扩展 Git。 它只允许在服务器端进行克隆。

当您在本地工作站上克隆 GitHub 存储库时,除非您被明确声明为“贡献者”,否则您无法回馈上游存储库。那是因为您的克隆是该项目的一个单独实例。如果你想为项目做贡献,你可以使用 forking 来做,方式如下:

  • 在您的 GitHub 帐户上克隆该 GitHub 存储库(即“fork”部分,服务器端的克隆)
  • 向该 GitHub 存储库贡献提交(它在您自己的 GitHub 帐户中,因此您有权推送到它)
  • 将任何有趣的贡献发回原始 GitHub 存储库(即通过您在自己的 GitHub 存储库上所做的更改的

还要检查“协作 GitHub 工作流程”。

如果要保持与原始存储库(也称为上游)的链接,则需要添加一个引用该原始存储库的远程。

解决方法

我一直听到人们说他们在 Git 中分叉代码。Git “fork” 听起来很像 Git “clone” 加上一些(毫无意义的)心理愿意放弃未来的合并。Git 中没有 fork 命令,对吧?

GitHub 通过在其上装订通信使分叉更加真实。也就是说,你按下 fork 按钮,然后,当你按下 pull request 按钮时,系统足够聪明,可以向所有者发送电子邮件。因此,围绕存储库所有权和权限有点像跳舞。

是/否?对 GitHub 向这个方向扩展 Git 有任何担忧吗?或者有任何关于 Git 吸收该功能的传言?