Git サブツリーを使用してライブラリにマージしたプロジェクトがあります。ライブラリとプロジェクトの間でいくつかのマイナーな変更をプッシュおよびプルしました。
その後、ライブラリの最終的なホームとなる新しいリポジトリが作成されました。これには、私のプロジェクトと基本的に同じバージョンのライブラリ コードが含まれていますが、おそらく 1 つまたは 2 つのマイナーな変更が加えられています。さまざまな理由から、以前のライブラリのホームと直接の Git 履歴を共有していません (以前のライブラリのクローンではありません)。
私が今やりたいことは、新しい場所からライブラリをプル/プッシュするようにプロジェクトを変更することです。これが初めて発生した場合は、マージの競合も解決する必要がありますが、この場合、変更は些細なものであり、後でやり直すことができます。
これを行う最善の方法は何ですか?
プロジェクトのライブラリのコピーを削除してから、古いリモートとブランチと一緒に削除しようとしました。次に、新しい場所からサブツリーの追加などを試みました。これは機能しているように見えましたが、プロジェクトからライブラリにプッシュバックしようとすると、致命的な不良オブジェクト エラーが発生します。
私が試したアプローチには欠陥があると思います-おそらく共有された歴史の欠如に関係しています-しかし、それを修正する方法や何を知るために何が起こっているのかを十分に理解していません.この問題に対する「適切な」アプローチはあるべきです。
[更新: 質問を編集して少しわかりやすくしました - 少しあいまいでした]