Git merge error“commit is not possible because you have unmerged files”(无法提交,因为你有未合并的文件)

yptwkmov  于 12个月前  发布在  Git
关注(0)|答案(8)|浏览(297)

我在编辑代码之前忘记了git pull;当我提交新代码并尝试推送时,我得到了错误“push is not possible”。
在这一点上,我做了一个git pull,使一些文件与冲突突出显示。我删除了冲突,但我不知道从这里做什么。
我再次尝试git commit,但它说“提交是不可能的,因为你有未合并的文件”:

error: Committing is not possible because you have unmerged files.

字符串

nwo49xxi

nwo49xxi1#

如果您已经修复了冲突,则需要使用git add [filename]将文件添加到stage,然后正常提交。

lo8azlld

lo8azlld2#

您需要做两件事。首先,

git add .
git stash  

git checkout <some branch>

字符串
它应该解决你的问题,因为它解决了我。

nfs0ujit

nfs0ujit3#

你可以使用git stash来保存当前仓库,然后再提交(在将来自上游仓库的更改与git stash pop合并之后)。

wqnecbli

wqnecbli4#

当你解决了冲突,但文件仍然需要添加到stage区域时,就会出现这个错误。git add .会解决这个问题。然后,尝试提交和合并。

svmlkihl

svmlkihl5#

从git 2.23(2019年8月)开始,你现在有了一个快捷方式:git restore --staged [filepath]。使用这个命令,你可以忽略一个冲突的文件,而不需要添加和删除它。
范例:

> git status

  ...
  Unmerged paths:
    (use "git add <file>..." to mark resolution)
      both modified:   file.ex

> git restore --staged file.ex

> git status

  ...
  Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git restore <file>..." to discard changes in working directory)
      modified:   file.ex

字符串

6rvt4ljy

6rvt4ljy6#

我有一个类似的问题,归结为删除文件下的“未合并的路径”
必须使用git rm删除这些文件

6psbrbz9

6psbrbz97#

所以从上面的错误.所有你要做的就是修复这个问题是恢复你的代码.(git revert HEAD)然后git pull,然后重做你的更改,然后git pull再次能够提交或合并没有错误.

0wi1tuuw

0wi1tuuw8#

我只是在Android Studio中的Git下使用了“reset HEAD”选项。

相关问题