Skip to main content

此版本的 GitHub Enterprise 已停止服务 2022-10-12. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

关于分支

使用分支隔离开发工作而不影响仓库中的其他分支。 每个仓库都有一个默认分支,也可有多个其他分支。 您可以使用拉取请求将一个分支合并到另一个分支。

关于分支

分支允许您在仓库的包含区域中开发功能、修复错误或安全地试验新的想法。

始终可以从现有分支创建分支。 通常,您可能会从仓库的默认分支创建新的分支。 然后,您可以单独处理这个新分支,不受其他人对仓库所做更改的影响。 为构建功能而创建的分支通常称为功能分支或主题分支。 有关详细信息,请参阅“在存储库中创建和� 除分支”。

也可以使用分支发布 GitHub Pages 网站。 有关详细信息,请参阅“关于 GitHub Pages”。

必须对仓库有写入权限才可在拉取请求中创建分支、打开拉取请求或者� 除和恢复分支。 有关详细信息,请参阅“对 GitHub 的访问权限”。

关于默认分支

When you create a repository with content on your GitHub Enterprise Server instance, GitHub Enterprise Server creates the repository with a single branch. This first branch in the repository is the default branch. 默认分支是任何人访问您的仓库时 GitHub 显示的分支。 默认分支也是初始分支,当有人克隆存储库时,Git 会在本地检出该分支。 除非指定不同的分支,否则仓库中的默认分支是新拉取请求和代� �提交的基础分支。

默认情况下,GitHub Enterprise Server 将任何新存储库中的默认分支命名为 main

您可以更改现有仓库的默认分支。 有关详细信息,请参阅“更改默认分支”。

您可以为新仓库设置默认分支名称。 有关详细信息,请参阅“管理存储库的默认分支、“管理组织中存储库的默认分支名称”和“在企业中强制实施存储库管理策略”。

使用分支

� 对� 的工作感到满意后,可以提交拉取请求以将当前分支(头部分支)的更改合并到另一分支(基础分支) 。 有关详细信息,请参阅“关于拉取请求”。

在拉取请求合并或关闭后,可以� 除头分支,� 为不再需要。 您必须对仓库具有写入权限才能� 除分支。 � 法� 除与打开的拉取请求直接关联的分支。 有关详细信息,请参阅“� 除和还原拉取请求中的分支

如果您在拉取请求合并后� 除头部分支,GitHub 会检查将已� 除分支指定为基础分支的同一仓库中的任何开放拉取请求。 GitHub 将自动更新任何此类拉取请求,将其基础分支更改为合并的拉取请求的基础分支。 下图说明了这一点。

在这里,有人从 main 分支创建了一个名为 feature1 的分支,而� 已经从 feature1 创建了一个名为 feature2 的分支。 两个分支都有打开的拉取请求。 箭头指示每个拉取请求的当前基础分支。 此时,feature1feature2 的基础分支。 如果现在合并 feature2 的拉取请求,则 feature2 分支将合并到 feature1 中。

merge-pull-request-button

在下一个关系图中,有人已将 feature1 的拉取请求合并到 main 分支中,并� 除了 feature1 分支。 � 此,GitHub 自动重新定位了 feature2 的拉取请求,使其基础分支现在变成了 main

merge-pull-request-button

现在,当� 合并 feature2 拉取请求时,该请求将合并到 main 分支中。

使用受保护分支

仓库管理员可对分支启用保护。 如果您处理的是受保护分支,将� 法� 除或强制推送到该分支。 在分支可以合并之前,仓库管理员可以另外启用� 项其他受保护分支设置来实施不同的工作流程。

注意: 如果� 是存储库管理员,则即使拉取请求不符合要求,也可在启用了分支保护的分支上合并拉取请求,除非分支保护设置为“包括管理员”。

若要查看是否可以合并拉取请求,可在拉取请求的“对话”选项卡底部的合并框中查看。有关详细信息,请参阅“关于受保护的分支”。

当分支受保护时:

  • 您� 法� 除或强制推送到该分支。
  • 如果对分支启用了必需状态检查,则在所有必需 CI 测试通过之前,� 法将更改合并到分支。 有关详细信息,请参阅“关于状态检查”。
  • 如果对分支启用了必需拉取请求审查,则在满足拉取请求审查策略中的所有要求之前,� 法将更改合并到分支。 有关详细信息,请参阅“合并拉取请求”。
  • 如果对分支启用了代� �所有者的必需审查,并且拉取请求修改具有所有者的代� �,则代� �所有者必须批准拉取请求后才可合并。 有关详细信息,请参阅“关于代� �所有者”。
  • 如果对分支启用了必需提交签名,则� 法将任何提交推送到未签名和验证的分支。 有关详细信息,请参阅“关于提交签名验证”和“关于受保护的分支”。
  • 如果您使用 GitHub 的冲突编辑器来解决从受保护分支创建拉取请求的冲突,GitHub 可帮助您为拉取请求创建一个备用分支,以解决合并冲突。 有关详细信息,请参阅“解决 GitHub 上的合并冲突”。

延伸阅读