Git 合并与丢失更改

3

我对 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分支中。

我做错了什么?


你是否将已解决的冲突更改与主分支合并了? - himeshc_IB
我在解决冲突后没有进行合并。我在某个地方读到这样做会导致很大的问题。 - Ahmed Z.
2个回答

3

请问您是否标记了已解决的文件?

在CLI中,当冲突得到解决后: 在结束合并之前使用 git add yourFile 命令将文件添加到暂存区。


1

我没有足够的声望来添加评论,所以抱歉将其写为答案。

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

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

请查看如何解决Git中的合并冲突?,以查看解决git冲突的工作流程。


谢谢提供信息,我会遵循指示的时间 :) - Ahmed Z.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接