とあるリモートリポジトリ(ここでは「Remote」とします)があり、Githubを用いてこれを僕とAさんで使っています。
しかし、僕とAさんのローカルリポジトリでのコミット履歴が異なっていて、これによってconflictが発生してしまいました。現在、このような状況です。
・僕のコミット履歴
コミットA
コミットB
コミットE
コミットF

・友人Aのコミット履歴
コミットC
コミットD
コミットE
コミットF

・Remoteの状態
僕がpushしたコミットAが反映されている(push -fを使用してしまいました)

なお、コミットAはコミットCよりも新しいコミットで、
コミットBはコミットDよりも新しいコミットとします。

ここで、コミットCにはコミットAには無い変更点がありそれを反映させたいのですが
コミットが干渉してしてしまいどうすれば良いのか困り果てている状況です。
rebaseも試みたのですが、上手くいきませんでした。

僕と友人Aのコミットを結合(?)するにはどうすれば良いのでしょうか。
また、コミットCの変更点を今のRemoteに反映させることは可能なのでしょうか。
分かりにくく乱雑な文章で申し訳ございませんが、
もし分かる方がいらっしゃいましたら回答宜しくお願い致します。