我忘记在编辑代码之前拉出我的代码;当我提交新代码并尝试推送时,我得到了错误“push is not possible”。
在这一点上,我做了一个git拉,使一些文件与冲突突出显示。我消除了冲突,但我不知道接下来该做什么。
我尝试git再次提交,但它说“提交是不可能的,因为你有未合并的文件”:
错误:无法提交,因为您有未合并的文件。
我忘记在编辑代码之前拉出我的代码;当我提交新代码并尝试推送时,我得到了错误“push is not possible”。
在这一点上,我做了一个git拉,使一些文件与冲突突出显示。我消除了冲突,但我不知道接下来该做什么。
我尝试git再次提交,但它说“提交是不可能的,因为你有未合并的文件”:
错误:无法提交,因为您有未合并的文件。
当前回答
自从git 2.23(2019年8月)以来,你现在有一个快捷方式来做到这一点:git restore——staging [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
其他回答
此错误发生在您解决冲突时,但仍然需要在舞台区域中添加文件。Git添加。就能解决问题。然后,尝试提交和合并。
如果你已经修复了冲突,你需要用git add [filename]将文件添加到阶段,然后正常提交。
自从git 2.23(2019年8月)以来,你现在有一个快捷方式来做到这一点:git restore——staging [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
我也遇到过类似的问题,归结起来就是删除“未合并路径”下的文件
这些文件必须使用git rm删除
你可以在做你想做的提交之前使用git stash来保存当前的存储库(在合并来自上游repo和git stash pop的更改之后)。我昨天也遇到了同样的问题。