Git 合并和遗漏更改

Git Merge and Missing changes

我对 GitHub 有点陌生。如果这是一个菜鸟问题,请提前道歉。 我有 2 个分支,DevMaster。我在 Dev 上工作。当我想与 Master 合并时,我做了以下操作:

$ git checkout master
$ git pull origin master
$ git merge dev

然后我发生了一些冲突。我使用 Sourcetree 修复了冲突。

然后当我提交新的更改时,使用:

$ git commit -m "Dev merged in Master"

没有冲突的文件显示在 Master 分支中,但有冲突的文件没有显示任何更改。

他们在 Dev 但不在 Master

我做错了什么?

您是否将文件标记为已解决?

在 CLI 中,解决冲突后:git add yourFile 在结束合并之前暂存此文件。

我没有足够的声誉来添加评论,所以很抱歉写这个作为答案。

正如@Jérémy Giuseppi 提到的,如果您希望将文件包含在您的提交中,则必须始终在进行任何修改后添加文件。解决冲突后,您对文件 B 进行了修改,但使用 git commit -m 'message' 不包括这些更新。

为了避免将来出现这种情况,我建议使用 git commit -a -m 'message',其中 -a 标志告诉 git 将自上次提交以来修改过的所有文件添加到新的提交消息中。

查看 How to resolve merge conflicts in Git? 以查看 git

中解决冲突的工作流程