web-dev-qa-db-ja.com

Git pull-マージする前にそれらを移動または削除してください

サーバーからgit pull Origin masterを実行しようとしていますが、エラーが発生し続けます:

Please move or remove them before you can merge.

追跡されていないファイルはありませんが、何らかの理由でignored filesに問題があるようです。

git clean -ndを実行して、何が削除されるかを確認してみましたが、.gitignoreで無視されるファイルの全リストが表示されます。

プルできるようにこれを修正するにはどうすればよいですか?

39
Brett

Originの.gitignoreファイルの内容に関係なく、ファイルはリモートリポジトリに追加されたようです。

ファイルはリモートリポジトリに存在するため、gitはそれらをローカルの作業ツリーにもプルする必要があるため、ファイルが既に存在することを訴えます。

.gitignoreは、新しく追加されたファイルのスキャンにのみ使用され、既に追加されたファイルとは関係ありません。

そのため、解決策は、作業ツリー内のファイルを削除し、最新バージョンをプルすることです。または、長期的な解決策は、誤って追加されたファイルをリポジトリから削除することです。

私はちょうど同じ問題に直面し、次を使用してそれを解決しました:最初に使用して追跡ファイルをクリアします:

git clean -d -f

git pull Origin masterを試してください

git clean -helpと入力すると、他のgit cleanオプションを表示できます

74
Neha

すべての変更を削除および削除するにはgit clean -d -f

9

削除するファイルが多すぎる場合、これは私にとって実際のケースです。次の解決策を試すこともできます。

1)フェッチ

2)戦略とマージします。たとえば、これは私のために働く:

git.exe merge --strategy=ours master
1
David

必要に応じてソース管理にファイルを追加し、開発をマージします。できます :)

0
Bhauraj Biradar

次のようなエラーが発生している場合

  • ブランチマスター-> FETCH_HEADエラー:次の追跡されていない作業ツリーファイルはマージによって上書きされます:src/dj/abc.htmlマージする前にそれらを移動または削除してください。中止

上記のファイルを手動で削除してください(注意)。 Gitはこのファイルをmasterブランチからマージします。

0
Deepak G