Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AutoCorrect fix for translations/zh-CN/content/pull-requests #20830

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,20 @@ ms.contentlocale: zh-CN
ms.lasthandoff: 09/10/2022
ms.locfileid: '145129653'
---
Git 通常可以自动解决分支之间的冲突并合并它们。 通常,更改发生在不同的行,甚至不同的文件,因此计算机容易理解合并。 但是,有时存在竞争更改的情况,如果没有您的帮助,Git 无法解决。 通常,当人们对相同文件的相同行进行不同的更改时,或者一个人编辑文件而另一个人删除同一文件时,就会发生合并冲突。
Git 通常可以自动解决分支之间的冲突并合并它们。通常,更改发生在不同的行,甚至不同的文件,因此计算机容易理解合并。但是,有时存在竞争更改的情况,如果没有您的帮助,Git 无法解决。通常,当人们对相同文件的相同行进行不同的更改时,或者一个人编辑文件而另一个人删除同一文件时,就会发生合并冲突。

您必须解决所有合并冲突后,才能合并 {% data variables.product.product_name %} 上的拉取请求。 如果在拉取请求中的比较分支与基本分支之间存在合并冲突,你可以在“合并拉取请求”按钮上方查看包含冲突更改的文件列表。 “合并拉取请求”按钮在你解决比较分支与基本分支之间的所有冲突之前会一直停用。
您必须解决所有合并冲突后,才能合并 {% data variables.product.product_name %} 上的拉取请求。如果在拉取请求中的比较分支与基本分支之间存在合并冲突,你可以在“合并拉取请求”按钮上方查看包含冲突更改的文件列表。 “合并拉取请求”按钮在你解决比较分支与基本分支之间的所有冲突之前会一直停用。

![合并冲突错误消息](/assets/images/help/pull_requests/merge_conflict_error_on_github.png)

## 解决合并冲突

要解决合并冲突,必须手动编辑冲突的文件以选择要保留在最终合并中的更改。 解决合并冲突有多种不同的方式:
要解决合并冲突,必须手动编辑冲突的文件以选择要保留在最终合并中的更改。解决合并冲突有多种不同的方式:

- 如果合并冲突是竞争行更改而引起的,例如人们对 Git 仓库中不同分支上相同文件的相同行进行不同的更改,您可以使用冲突编辑器在 {% data variables.product.product_name %} 上解决。 有关详细信息,请参阅“[在 {% data variables.product.prodname_dotcom %} 上解决合并冲突](/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github)”。
- 对于所有其他类型的合并冲突,必须在仓库的本地克隆版本上解决,然后将更改推送到 {% data variables.product.product_name %} 上的分支。 可以使用命令行或 [{% data variables.product.prodname_desktop %}](https://desktop.github.com/) 之类的工具推送更改。 有关详细信息,请参阅“[在命令行上解决合并冲突](/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line)”。
- 如果合并冲突是竞争行更改而引起的,例如人们对 Git 仓库中不同分支上相同文件的相同行进行不同的更改,您可以使用冲突编辑器在 {% data variables.product.product_name %} 上解决。有关详细信息,请参阅“[在 {% data variables.product.prodname_dotcom %} 上解决合并冲突](/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github)”。
- 对于所有其他类型的合并冲突,必须在仓库的本地克隆版本上解决,然后将更改推送到 {% data variables.product.product_name %} 上的分支。可以使用命令行或 [{% data variables.product.prodname_desktop %}](https://desktop.github.com/) 之类的工具推送更改。有关详细信息,请参阅“[在命令行上解决合并冲突](/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line)”。

如果您在命令行上有合并冲突,则在计算机本地解决合并冲突之前,无法将本地更改推送到 {% data variables.product.product_name %}。 如果尝试在命令行上合并具有合并冲突的分支,将会收到错误消息。 有关详细信息,请参阅“[使用命令行解决合并冲突](/articles/resolving-a-merge-conflict-using-the-command-line/)”。
如果您在命令行上有合并冲突,则在计算机本地解决合并冲突之前,无法将本地更改推送到 {% data variables.product.product_name %}。如果尝试在命令行上合并具有合并冲突的分支,将会收到错误消息。有关详细信息,请参阅“[使用命令行解决合并冲突](/articles/resolving-a-merge-conflict-using-the-command-line/)”。
```shell
$ git merge <em>BRANCH-NAME</em>
> Auto-merging styleguide.md
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,14 @@ ms.contentlocale: zh-CN
ms.lasthandoff: 09/11/2022
ms.locfileid: '145129651'
---
您只能在 {% data variables.product.product_name %} 上解决由竞争行更改引起的合并冲突,例如当人们对 Git 仓库中不同分支上同一文件的同一行进行不同的更改时。 对于所有其他类型的合并冲突,您必须在命令行上本地解决冲突。 有关详细信息,请参阅“[使用命令行解决合并冲突](/articles/resolving-a-merge-conflict-using-the-command-line/)”。
您只能在 {% data variables.product.product_name %} 上解决由竞争行更改引起的合并冲突,例如当人们对 Git 仓库中不同分支上同一文件的同一行进行不同的更改时。对于所有其他类型的合并冲突,您必须在命令行上本地解决冲突。有关详细信息,请参阅“[使用命令行解决合并冲突](/articles/resolving-a-merge-conflict-using-the-command-line/)”。

{% ifversion ghes or ghae %} 如果站点管理员对存储库之间的拉取请求禁用了合并冲突编辑器,则无法在 {% data variables.product.product_name %} 上使用冲突编辑器,并且必须在命令行上解决合并冲突。 例如,如果禁用合并冲突编辑器,则无法在复刻和上游仓库之间的拉取请求中使用它。
{% ifversion ghes or ghae %} 如果站点管理员对存储库之间的拉取请求禁用了合并冲突编辑器,则无法在 {% data variables.product.product_name %} 上使用冲突编辑器,并且必须在命令行上解决合并冲突。例如,如果禁用合并冲突编辑器,则无法在复刻和上游仓库之间的拉取请求中使用它。
{% endif %}

{% warning %}

**警告:** 在 {% data variables.product.product_name %} 上解决合并冲突时,拉取请求的整个 [基础分支](/github/getting-started-with-github/github-glossary#base-branch)都将合并到 [头部 分支](/github/getting-started-with-github/github-glossary#head-branch)中。 确保您确实想要提交到此分支。 如果头部分支是仓库的默认分支,您可以选择创建一个新分支作为拉取请求的头部分支。 如果头部分支是受保护分支,则无法将冲突解决合并到其中,因此系统会提示您创建一个新的头部分支。 有关详细信息,请参阅“[关于受保护的分支](/github/administering-a-repository/about-protected-branches)”。
**警告:** 在 {% data variables.product.product_name %} 上解决合并冲突时,拉取请求的整个 [基础分支](/github/getting-started-with-github/github-glossary#base-branch)都将合并到 [头部 分支](/github/getting-started-with-github/github-glossary#head-branch)中。确保您确实想要提交到此分支。如果头部分支是仓库的默认分支,您可以选择创建一个新分支作为拉取请求的头部分支。如果头部分支是受保护分支,则无法将冲突解决合并到其中,因此系统会提示您创建一个新的头部分支。有关详细信息,请参阅“[关于受保护的分支](/github/administering-a-repository/about-protected-branches)”。

{% endwarning %}

Expand All @@ -40,15 +40,15 @@ ms.locfileid: '145129651'

{% tip %}

**提示:** 如果停用“解决冲突”按钮,则拉取请求的合并冲突过于复杂无法在 {% data variables.product.product_name %}{% ifversion ghes or ghae %} 上解决,或站点管理员已禁用存储库之间拉取请求的冲突编辑器{% endif %}。 必须使用备用 Git 客户端或在命令行上使用 Git 解决合并冲突。 有关详细信息,请参阅“[使用命令行解决合并冲突](/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line)”。
**提示:** 如果停用“解决冲突”按钮,则拉取请求的合并冲突过于复杂无法在 {% data variables.product.product_name %}{% ifversion ghes or ghae %} 上解决,或站点管理员已禁用存储库之间拉取请求的冲突编辑器{% endif %}。必须使用备用 Git 客户端或在命令行上使用 Git 解决合并冲突。有关详细信息,请参阅“[使用命令行解决合并冲突](/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line)”。

{% endtip %} {% data reusables.pull_requests.decide-how-to-resolve-competing-line-change-merge-conflict %} ![查看带有冲突标记的合并冲突示例](/assets/images/help/pull_requests/view-merge-conflict-with-markers.png)
1. 如果文件中有多个合并冲突,请向下滚动到下一组冲突标记,然后重复步骤 4 和步骤 5 以解决合并冲突。
1. 解决文件中的所有冲突后,单击“标记为已解决”。
![单击“标记为已解决”按钮](/assets/images/help/pull_requests/mark-as-resolved-button.png)
1. 如果您有多个冲突文件,请在“冲突文件”下的页面左侧选择您要编辑的下一个文件,并重复步骤 4 到 7,直到您解决所有拉取请求的合并冲突。
![适用时选择下一个冲突文件](/assets/images/help/pull_requests/resolve-merge-conflict-select-conflicting-file.png)
1. 解决所有合并冲突后,单击“提交合并”。 这会将整个基本分支合并到头部分支。
1. 解决所有合并冲突后,单击“提交合并”。这会将整个基本分支合并到头部分支。
![解决合并冲突按钮](/assets/images/help/pull_requests/merge-conflict-commit-changes.png)
1. 如果出现提示,请审查您要提交的分支。

Expand All @@ -57,10 +57,10 @@ ms.locfileid: '145129651'

如果您选择创建一个新分支,请输入该分支的名称。

如果拉取请求的头部分支是受保护分支,则必须创建新分支。 您将无法选择更新受保护分支。
如果拉取请求的头部分支是受保护分支,则必须创建新分支。您将无法选择更新受保护分支。

单击“创建分支并更新我的拉取请求”或“我已了解,继续更新” 。 按钮文本对应于您正在执行的操作。
1. 若要合并拉取请求,请单击“合并拉取请求”。 有关其他拉取请求合并选项的详细信息,请参阅“[合并拉取请求](/articles/merging-a-pull-request/)”。
单击“创建分支并更新我的拉取请求”或“我已了解,继续更新” 。按钮文本对应于您正在执行的操作。
1. 若要合并拉取请求,请单击“合并拉取请求”。有关其他拉取请求合并选项的详细信息,请参阅“[合并拉取请求](/articles/merging-a-pull-request/)”。

## 延伸阅读

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,26 @@ ms.contentlocale: zh-CN
ms.lasthandoff: 09/11/2022
ms.locfileid: '147883455'
---
当对文件的同一行进行竞争更改时,或者当一个人编辑文件而另一个人删除同一文件时,会发生合并冲突。 有关详细信息,请参阅“[关于合并冲突](/articles/about-merge-conflicts/)”。
当对文件的同一行进行竞争更改时,或者当一个人编辑文件而另一个人删除同一文件时,会发生合并冲突。有关详细信息,请参阅“[关于合并冲突](/articles/about-merge-conflicts/)”。

{% tip %}

**提示:** 可以使用冲突编辑器在 {% data variables.product.product_name %} 上解决作为拉取请求组成部分的各分支之间的竞争行更改合并冲突。 有关详细信息,请参阅“[在 GitHub 上解决合并冲突](/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github)”。
**提示:** 可以使用冲突编辑器在 {% data variables.product.product_name %} 上解决作为拉取请求组成部分的各分支之间的竞争行更改合并冲突。有关详细信息,请参阅“[在 GitHub 上解决合并冲突](/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github)”。

{% endtip %}

## 竞争行更改合并冲突

要解决由竞争行更改导致的合并冲突,您必须从新提交的不同分支中选择要合并的更改。

例如,如果你和另一个人都在同一 Git 存储库不同分支的同一行中编辑了 styleguide.md 文件,则在尝试合并这些分支时会发生合并冲突错误。 必须使用新提交解决这一合并冲突,然后才能合并这些分支。
例如,如果你和另一个人都在同一 Git 存储库不同分支的同一行中编辑了 styleguide.md 文件,则在尝试合并这些分支时会发生合并冲突错误。必须使用新提交解决这一合并冲突,然后才能合并这些分支。

{% data reusables.command_line.open_the_multi_os_terminal %}
2. 导航到有合并冲突的本地 Git 仓库中。
```shell
cd <em>REPOSITORY-NAME</em>
```
3. 生成受合并冲突影响的文件列表。 在此示例中,styleguide.md 文件存在合并冲突。
3. 生成受合并冲突影响的文件列表。在此示例中,styleguide.md 文件存在合并冲突。
```shell
$ git status
> # On branch branch-b
Expand All @@ -56,7 +56,7 @@ ms.locfileid: '147883455'
> no changes added to commit (use "git add" and/or "git commit -a")
```
4. 打开你首选的文本编辑器,例如 [Atom](https://atom.io/),然后导航到有合并冲突的文件。
5. 要在文件中查看合并冲突的开头,请在文件中搜索冲突标记 `<<<<<<<`。 当你在文本编辑器中打开文件时,你将在行 `<<<<<<< HEAD` 后看到头部分支或基本分支。 接下来,你将看到 `=======`,它将你的更改与其他分支中的更改分开,后跟 `>>>>>>> BRANCH-NAME`。 在本例中,一个人在基本或头部分支中编写了“open an issue”,而另一个人在比较分支或 `branch-a` 中编写了“ask your question in IRC”。
5. 要在文件中查看合并冲突的开头,请在文件中搜索冲突标记 `<<<<<<<`。当你在文本编辑器中打开文件时,你将在行 `<<<<<<< HEAD` 后看到头部分支或基本分支。接下来,你将看到 `=======`,它将你的更改与其他分支中的更改分开,后跟 `>>>>>>> BRANCH-NAME`。在本例中,一个人在基本或头部分支中编写了“open an issue”,而另一个人在比较分支或 `branch-a` 中编写了“ask your question in IRC”。

```
If you have questions, please
Expand Down Expand Up @@ -86,14 +86,14 @@ ms.locfileid: '147883455'

要解决由对文件进行竞争更改而导致的合并冲突,对于一个人删除分支中的文件而另一个人编辑同一文件的情况,您必须选择是删除还是将删除的文件保留在新提交中。

例如,如果你编辑了一个文件(如 README.md),而另一个人在同一 Git 存储库的另一个分支中删除了同一文件,那么当你尝试合并这些分支时将发生合并冲突错误。 必须使用新提交解决这一合并冲突,然后才能合并这些分支。
例如,如果你编辑了一个文件(如 README.md),而另一个人在同一 Git 存储库的另一个分支中删除了同一文件,那么当你尝试合并这些分支时将发生合并冲突错误。必须使用新提交解决这一合并冲突,然后才能合并这些分支。

{% data reusables.command_line.open_the_multi_os_terminal %}
2. 导航到有合并冲突的本地 Git 仓库中。
```shell
cd <em>REPOSITORY-NAME</em>
```
2. 生成受合并冲突影响的文件列表。 在此示例中,文件 README.md 存在合并冲突。
2. 生成受合并冲突影响的文件列表。在此示例中,文件 README.md 存在合并冲突。
```shell
$ git status
> # On branch main
Expand All @@ -111,7 +111,7 @@ ms.locfileid: '147883455'
> # no changes added to commit (use "git add" and/or "git commit -a")
```
3. 打开你首选的文本编辑器,例如 [Atom](https://atom.io/),然后导航到有合并冲突的文件。
6. 决定是否要保留删除的文件。 您可能想要在文本编辑器中查看对删除的文件所做的最新更改。
6. 决定是否要保留删除的文件。您可能想要在文本编辑器中查看对删除的文件所做的最新更改。

要将已删除的文件重新添加到仓库:
```shell
Expand Down
Loading