跳至主要内容

在 GitHub Desktop 中管理分支

您可以使用 GitHub Desktop 从仓库中现有的分支创建新的分支,以便您可以安全地试验更改。

平台导航

关于管理分支

您可以使用分支安全地试验对项目的更改。分支将您的开发工作与仓库中的其他分支隔离开来。例如,您可以使用分支来开发新功能或修复错误。

您始终从现有分支创建分支。通常,您可能会从仓库的默认分支创建分支。然后,您可以单独处理此新分支,而不会受到其他人对仓库所做的更改的影响。

您还可以从分支历史记录中的先前提交开始创建分支。如果您需要返回到仓库的早期版本以调查错误,或者在最新的发行版之上创建热修复程序,这将非常有用。

一旦您对自己的工作满意,您可以创建一个拉取请求,将当前分支中的更改合并到另一个分支中。有关更多信息,请参阅“从 GitHub Desktop 创建问题或拉取请求”和“关于拉取请求”。

如果您有权读取仓库,您始终可以在 GitHub Desktop 中创建分支,但只有当您有权写入仓库时,才能将分支推送到 GitHub。

仓库管理员可以在分支上启用保护。如果您正在处理受保护的分支,则将无法删除或强制推送到该分支。仓库管理员可以启用其他受保护分支设置,以在合并分支之前强制执行特定工作流。有关更多信息,请参阅“关于受保护的分支”。

仓库管理员还可以启用规则集。规则集可用于在创建新分支时要求使用特定分支名称,或者仅允许具有绕过权限的用户将新分支发布到远程仓库。如果分支不符合规则集,GitHub Desktop 将显示警告并阻止创建分支。有关更多信息,请参阅“关于规则集”。

创建分支

提示

您创建的第一个新分支将基于默认分支。如果您有多个分支,您可以选择将新分支基于当前签出的分支或默认分支。

  1. 在应用程序顶部,单击 **当前分支**,然后在分支列表中,单击您要基于其创建新分支的分支。

    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.

  2. 单击**新建分支**。

    Screenshot of the "Current Branch" dropdown view. Next to the "Filter" field, a button, labeled "New Branch", is outlined in orange.

  3. 在“创建分支”窗口的“名称”下,键入新分支的名称。

  4. 在“基于创建分支...”下,为新分支选择一个基分支。

  5. 单击**创建分支**。

从之前的提交创建分支

  1. 在左侧侧边栏中,单击**历史记录**。

    Screenshot of the "History" tab in the sidebar. Above a list of commits, the tab button, labeled "History", is highlighted with an orange outline.

  2. 右键单击您要从中创建新分支的提交,然后选择**从此提交创建分支**。

    Screenshot of a list of commits in the "History" tab. Next to a commit, in a context menu, the cursor hovers over the "Create Branch from Commit" option.

  3. 在“创建分支”窗口的“名称”下,键入新分支的名称。

  4. 单击**创建分支**。

发布分支

如果您在 GitHub 上创建分支,则需要发布该分支才能使其可在 GitHub 上进行协作。

  1. 在仓库栏中,单击 **当前分支**,然后单击您要发布的分支。
    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.
  2. 单击**发布分支**。
    Screenshot of the repository bar. On the right-hand side, a button, labeled "Publish branch", is highlighted with an orange outline.

在分支之间切换

您可以查看和对仓库的任何分支进行提交。如果您有未提交的已保存更改,则需要在切换分支之前决定如何处理这些更改。您可以在当前分支上提交更改,暂存更改以将其暂时保存到当前分支,或将更改带到新分支。如果您想在切换分支之前提交更改,请参阅“在 GitHub Desktop 中提交和审查对项目的更改”。

提示

您可以在**提示**设置中为切换分支设置默认行为。有关更多信息,请参阅“在 GitHub Desktop 中配置基本设置”。

  1. 在仓库栏中,单击 **当前分支**,然后单击您要切换到的分支。
    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.
  2. 如果您有已保存的未提交更改,在“切换分支”窗口中,选择**将我的更改保留在 CURRENT-BRANCH** 或**将我的更改带到 NEW-BRANCH**,然后单击**切换分支**。

删除分支

如果分支当前与打开的拉取请求关联,则无法删除该分支。您无法撤消删除分支的操作。

  1. 在仓库栏中,单击 **当前分支**,然后单击您要删除的分支。
    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.
  2. 在菜单栏中,单击**分支**,然后单击**删除...**。您也可以按Shift+Command+D
    Screenshot of the menu bar on a Mac. In the expanded "Branch" dropdown menu, the cursor hovers over the "Delete" option, highlighted in blue.
  1. 在仓库栏中,单击 **当前分支**,然后单击您要删除的分支。
    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.
  2. 在菜单栏中,单击**分支**,然后单击**删除...**。您也可以按Ctrl+Shift+D
    Screenshot of the "GitHub Desktop" menu bar on Windows. In the expanded "Branch" dropdown menu, an option labeled "Delete" is outlined in orange.

进一步阅读