解决 Git 状态未合并的路径
本文讨论解决 Git 中未合并路径所需的步骤。 当我们的存储库中存在合并冲突时,我们通常会收到此消息。
当合并分支时文件冲突时,您可能会遇到这样的消息。
例如,您在 master 分支中修改了一个文件,在 feature 分支中修改了同一个文件。 合并两者会导致您必须手动解决的冲突。
每次运行 git status
命令时,您都会收到 Unmerged paths 消息。 那么,你如何解决这个问题?
解决 Git 状态未合并的路径
我们将使用一个示例来演示上面解释的场景。
在我们的 master 分支中,我们将编辑 README.md 文件并提交更改。 然后我们将切换到功能分支并在与 master 和 commit 相同的行上编辑 README.md 文件。
最后,我们将尝试合并这两个分支。
让我们运行 git status
命令。
最简单的出路是解决冲突并提交更改。 我们将使用 Meld 来解决冲突。
运行 git mergetool
命令打开 Meld。 你应该得到这样的东西:
红色部分显示合并冲突。 我们需要做的就是编辑文档以消除冲突,保存更改并退出 Meld。
在我们的例子中,我们将保持简单并编辑文档以使其看起来相同。
在 Bash 终端上,我们可以运行 git add
命令和 git commit
来提交我们的更改并完成合并过程。
或者,您可以使用像 VSCode 这样的编辑器。 它向您显示合并冲突的位置以及如何解决冲突。
看看这个例子。
您可以选择接受当前更改、传入更改、两个更改或比较更改。 接受这两个更改将使您的文件有两个版本,这不是我们想要的。
一旦我们解决了冲突文件,我们就可以将文件添加到索引并使用 git add 和 git commit 命令提交。
这应该完成合并,如果您运行 git status 命令,您将获得一个干净的工作目录。
简而言之,当我们的存储库中存在合并冲突时,会弹出 Unmerged paths 消息。 您必须手动解决冲突并提交更改。
始终建议使用像 Meld 这样的合并工具。 它可以识别文件冲突的位置并使必要的更改更容易。