首页 > 解决方案 > Git手动合并问题

问题描述

所以我想做的是:有一个旧分支foo,我想在一个新分支中进行一些更改。这是我所做的:

bar我基于该分支创建了一个新分支,foo并希望将当前工作分支中的更改合并bazbar. 现在我做了:

git fetch origin
git checkout -b "baz" "origin/baz"
git merge "bar"

我已经手动解决了一些冲突,现在我已经暂存了这些更改,但它不会让我暂存一些子模块,我得到:

$ git add path/to/submodule/qux
error: unable to index file path/to/submodule/qux
fatal: updating files failed

为什么会这样,我如何让这些合并、分阶段和提交?可以使用最新的子模块,因为它们存在于baz.

当我这样做时$ git submodule update --init --recursive,我得到Skipping unmerged submodule path/to/submodule/qux,当我在那里 cd 时,目录是空的......

标签: gitgithubgit-mergegit-submodulesgit-merge-conflict

解决方案


首次运行重置:

git reset HEAD path/to/submodule/qux

然后,您可以为此子模块选择适合您的版本


推荐阅读