繁体   English   中英

如何解决Git合并冲突

[英]How to resolve Git merge conflict

我是github的新手,我正在尝试合并我的master和gh-pages分支。

在尝试合并时,我遇到了冲突。 现在我收到以下消息

在此输入图像描述

我如何解决它?

我通常使用git mergetool来解决冲突。

它启动了预定义的可视化合并工具。

看看你目前的状态:

git status

您可能会看到一些用于提交的文件和一些具有本地更改的文件。 分阶段的是没有问题合并的那些。 具有本地更改的那些具有合并冲突。 打开每个文件,你会在里面看到类似的东西:

<<<<< master
// some code that was in master
=====
// some code that was in gh-pages
>>>>> gh-pages

(我认为无论如何都是这样的)

编辑它们中的每一个,以便它们是您希望它们的方式(即:修复冲突)。 然后按照它说:

git add the/file/i/fixed.txt
git commit

基本上,请尝试以下步骤作为经验法则


看看当前的状态

git status

如果您没有任何未跟踪或未提交的内容,您可能会发生以下情况 在此输入图像描述

此时您将必须提交文件


添加到跟踪和提交

git add-commit -m 'commit message'

此时您将拥有: COMMITED

您现在可以将分支合并到当前分支或通过其他分支结帐

git checkout <branch>

并合并一些分支


合并一个分支

git merge <branch>

确保没有冲突,您现在可以成功合并分支。

如果你遇到合并冲突,你会看到类似的东西:

冲突

您现在需要确定需要保留哪些更改冲突文件, <<<<<<<<<< HEAD表示更改位于父分支中,而>>>>>>>>>>> refs/heads/new_idea实际上是从您尝试合并的分支添加的。

您可以使用各种合并工具来查看和解决冲突,有关合并工具的帮助,请查看git mergetool

希望能帮助到你!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM