私はマスターブランチから、私がかなりの時に開発してきた別のブランチにマージするのが難しいです。Git:マスターブランチからマージすることはできません "オブジェクト - サブモジュール"
私は次の取得まっすぐ進むマージを行う:
shell$ git merge master
fatal: cannot read object asd211f3a58febecd4e447szxs733079211c71b7sa '/my/sub/dir/foo~master': It is a submodule!
私は決してセットアップ明示的にサブモジュールとしてライブラリ「foo」で。私はgitによってサブディレクトリが.gitになっているライブラリをgitリポジトリであるメインプロジェクトに移動するのは間違いでした。
明らかに、私はサブモジュールを適切に取り外さなかったか、または何かが重大に壊れていました。
さらに重大な問題は、失敗したマージの後で、私は 'git status'を介して膨大な量のプロジェクトファイルを見ることです。 「変更されていますが、追加されていないファイル」には「未対応のファイル」が含まれています。これらは私のブランチからのファイルではなく、マスターからのファイルです。
壊れたレベルがいくつあるかわかりません。しかし、これは2つのステップの問題です。サブモジュールは、失敗したマージが表示された後のファイルの束に加えて表示されます。
このリポジトリをクリーニングするにはどうすればよいですか?
私は、サブモジュールがブランチ上で正しくあり、マスター上ではないのと同じ問題を抱えています。マージを完全に防止します。 シェルの$ gitが--hard ORIG_HEAD HEADをリセットf6ed2d5のFoo シェル$ gitのサブモジュールのステータスになってい シェル$ gitのチェックアウトマスター エラー: –