Skip to main content

在 GitHub Desktop 中同步分支

当提交推送到您在 GitHub 上的项目时,可通过从远程仓库拉取同步保留项目的本地副本。

Platform navigation

关于分支同步

您可以通过拉取自上次同步以来在 GitHub 上添加到分支的任何提交来同步本地分支与远程仓库。 如果从其他设备进行提交,或有多人参与项目,则需要同步本地分支以保持分支的更新。

当您拉取到本地分支时,只会更新仓库的本地副本。 要在 GitHub 上更新分支,您必须推送更改。 有关详细信息,请参阅“将更改从 GitHub Desktop 推送到 GitHub”。

要将更改从一个分支添加到另一个分支,可以合并这些分支。 要从同一仓库中的另一个分支应用更改到您的分支,可以在 GitHub Desktop 上将该分支合并到您的分支。 要请求将分支中的更改合并到网络中同一仓库或不同仓库中的另一个分支,可以在 GitHub Desktop 上创建拉取请求。 有关详细信息,请参阅“将另一个分支合并到项目分支”和“关于拉取请求”。

有些工作流程需要或受益于变基而不是合并。 通过变基,可以重新排序、编辑提交或将其压缩到一起。 有关详细信息,请参阅“关于 Git 变基”和“将项目分支变基到另一个分支”。

从远程拉取到您的本地分支

  1. 在 GitHub Desktop 中,使用 “当前分支”下拉列表,然后选择要更新的本地分支。

  2. 若要检查远程分支上的提交,请单击“提取源”

    存储库栏的屏幕截图。 “提取源”按钮(显示为由两个箭头组成的圆形图标)以橙色框出。

  3. 若要从远程分支拉取任何提交,请单击“拉取源”或“具有变基的拉取源” 。

    存储库栏的屏幕截图。 显示为向下箭头图标的“拉取源”按钮以橙色框出。

  4. 使用文本编辑器、命令行或其他工具(根据您的偏好)解决任何合并冲突。 有关详细信息,请参阅“解决合并冲突”。

将另一个分支合并到项目分支

  1. 在 GitHub Desktop 中,单击“ 当前分支”。

    存储库栏的屏幕截图。 标记为“当前分支”的按钮带有指示下拉菜单的向下箭头,以橙色框出。

  2. 单击“选择要合并到分支的分支选项”。

    “当前分支”下拉列表视图的屏幕截图。 在分支列表下方,标有“选择要合并到 my-feature 中的分支”的按钮以橙色框出。

  3. 单击要合并到当前分支的分支,然后单击“将分支合并到分支”。

    注意:如果存在合并冲突,GitHub Desktop 将在“将分支合并到分支”按钮上方为你显示警告。 在解决所有冲突之前无法合并分支。

  4. 若要将本地更改推送到远程存储库,请在存储库栏中单击“推送源”。

    存储库栏的屏幕截图。 标有“推送源”的按钮用橙色轮廓突出显示。

将项目分支变基到另一个分支

  1. 在菜单栏中,选择“分支”,然后单击“变基当前分支” 。

    Mac 上的菜单栏的屏幕截图。 在展开的“分支”下拉菜单上,光标悬停在标有“变基当前分支”的选项上。

    Windows 上的“GitHub Desktop”菜单栏的屏幕截图。 在展开的“分支”下拉菜单中,标有“变基当前分支”的选项以橙色突出显示。

  2. 单击要变基到当前分支的分支,然后单击“变基”。

  3. 如果确定要变基,请单击“开始变基”。

  4. 使用文本编辑器、命令行或其他工具(根据您的偏好)解决任何合并冲突。 有关详细信息,请参阅“解决合并冲突”。

  5. 若要推送本地更改,请单击“强制推送源”。

    存储库栏的屏幕截图。 标有“强制推送源”按钮(显示为由两个向上箭头组成的图标)以橙色框出。

将另一个分支压缩并合并到项目分支

  1. 在菜单栏中,选择“分支”,然后单击“压缩并合并到当前分支” 。

    Mac 上的菜单栏的屏幕截图。 在展开的“分支”下拉菜单上,光标悬停在标有“压缩并合并到当前分支”的选项上。

    Windows 上的“GitHub Desktop”菜单栏的屏幕截图。 在展开的“分支”下拉菜单中,标有“Squash 合并到当前...”的选项以橙色突出显示。

  2. 在“压缩并合并”窗口中,单击要合并到当前分支的分支,然后单击“压缩并合并”。

    注意:如果存在合并冲突,GitHub Desktop 将在“压缩并合并”按钮上方显示警告 。 在解决所有冲突之前无法压缩和合并分支。

  3. 若要将本地更改推送到远程存储库,请在存储库栏中单击“推送源”。

    存储库栏的屏幕截图。 标有“推送源”的按钮用橙色轮廓突出显示。

深入阅读