我在编辑代码之前忘记了git pull;当我提交新代码并尝试推送时,我得到了错误“push is not possible”。 在这一点上,我做了一个git pull,使一些文件与冲突突出显示。我删除了冲突,但我不知道从这里做什么。 我再次尝试git commit,但它说“提交是不可能的,因为你有未合并的文件”:
error: Committing is not possible because you have unmerged files.
> 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
8条答案
按热度按时间nwo49xxi1#
如果您已经修复了冲突,则需要使用
git add [filename]
将文件添加到stage,然后正常提交。lo8azlld2#
您需要做两件事。首先,
字符串
它应该解决你的问题,因为它解决了我。
nfs0ujit3#
你可以使用
git stash
来保存当前仓库,然后再提交(在将来自上游仓库的更改与git stash pop
合并之后)。wqnecbli4#
当你解决了冲突,但文件仍然需要添加到stage区域时,就会出现这个错误。git add .会解决这个问题。然后,尝试提交和合并。
svmlkihl5#
从git 2.23(2019年8月)开始,你现在有了一个快捷方式:
git restore --staged [filepath]
。使用这个命令,你可以忽略一个冲突的文件,而不需要添加和删除它。范例:
字符串
6rvt4ljy6#
我有一个类似的问题,归结为删除文件下的“未合并的路径”
必须使用
git rm
删除这些文件6psbrbz97#
所以从上面的错误.所有你要做的就是修复这个问题是恢复你的代码.(
git revert HEAD
)然后git pull
,然后重做你的更改,然后git pull
再次能够提交或合并没有错误.0wi1tuuw8#
我只是在Android Studio中的Git下使用了“reset HEAD”选项。