即使没有冲突,Git pull也不会快进合并

时间:2015-12-01 11:23:38

标签: git

我刚从远程仓库的主分支执行git pull到我目前正在通过命令行在本地工作的分支。

出乎意料的是Vim打开了。我放弃了Vim。 在此之后,我检查了git status,其中提供了以下信息:

On branch vod_playlists_my_list_title
All conflicts fixed but you are still merging. 
(use "git commit" to conclude merge)

以及要提交的3个文件的列表。

但是,我没有解决任何冲突。看看这些文件,我原本预计会发生快进合并。

想知道我在Vim中错过或应该做些什么......?

2 个答案:

答案 0 :(得分:2)

发生了什么

当您执行git pull时,它进行了合并。由于它没有任何冲突,它试图创建一个新的合并提交。

因此,它打开Vim来编写提交消息。 然后退出Vim而不保存,将提交消息留空。

Git拒绝了空提交,这使得提交中的所有内容都添加到暂存区域,但提交仍然撤消。

如何解决

您只需要git commit,输入消息,然后保存&退出:wq

答案 1 :(得分:1)

即使由于非快速前向拉(pull = fetch + merge)而未修复任何合并,您也必须提交更改。

no-ff创建merge commit,您必须运行git commit才能提交。

以下是它的外观演示。

enter image description here