219

git pull編集する前にコードを忘れました。新しいコードをコミットしてプッシュしようとすると、「プッシュできません」というエラーが発生しました。

その時点でgit pull、競合のあるいくつかのファイルを強調表示するaを実行しました。競合を削除しましたが、ここから何をすべきかわかりません。

もう一度試してみましgit commitたが、「ファイルがマージされていないため、コミットできません」と表示されます。

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

7 に答える 7

315

競合を修正した場合は、を使用してファイルをステージに追加し、git add [filename]通常どおりにコミットする必要があります。

于 2012-10-18T18:57:36.230 に答える
62

あなたは2つのことをする必要があります。最初に変更を追加します

git add .
git stash  

git checkout <some branch>

それは私に解決したようにあなたの問題を解決するはずです。

于 2015-03-16T15:57:31.963 に答える
12

git stash実行するコミットを実行する前に(アップストリームリポジトリからの変更をとマージした後)、現在のリポジトリを保存するために使用できますgit stash pop。私は昨日同じ問題を抱えていたときにこれをしなければなりませんでした。

于 2012-10-20T01:49:07.333 に答える
6

このエラーは、競合を解決したが、ファイルをステージ領域に追加する必要がある場合に発生します。gitadd。それを解決します。次に、コミットしてマージしてみます。

于 2019-07-09T06:08:17.447 に答える
3

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

于 2020-04-23T11:20:52.067 に答える
1

私は「マージされていないパス」の下のファイルを削除することに要約される同様の問題を抱えていました

これらのファイルは、を使用して削除する必要がありましたgit rm

于 2019-07-04T11:01:21.483 に答える
0

したがって、上記のエラーから。この問題を修正するために必要なのは、コードを元に戻すことだけです。(git revert HEAD)その後git pull、変更をやり直し、git pull再度、エラーなしでコミットまたはマージすることができました。

于 2019-12-17T17:27:18.783 に答える