過去にコミットした変更内容(マージ不要となった)がリモートリポジトリに残っており、別の担当者Aが別の変更をプルリクしようとしたら、その過去の変更内容も一緒に取り込まれてしまった。
そのため、過去の私の変更内容を取り消すことになったので、そのやり方をまとめておきます。
####リモートリポジトリにある担当者Aのプッシュしたブランチ(ブランチAとする)をcheckout
git checkout -b <ブランチA> origin/<ブランチA>
####まずは変更履歴の確認
> git log
commit <担当者Aの変更コミットID①>
Author: <担当者A>
Date: xxxxx
commit <担当者Aの変更コミットID②>
Author: <担当者A>
Date: xxxxx
commit <私の変更コミットID①>
Author: <私>
Date: xxxxx
commit <私の変更コミットID②>
Author: <私>
Date: xxxxx
commit <担当者Bの変更コミットID①>
Author: <担当者B>
Date: xxxxx
####私のコミットの新しい方からrevert
git revert <私の変更コミットID①>
> git log
commit <revertコミットID①>
Author: <私>
Date: xxxxx
commit <担当者Aの変更コミットID①>
Author: <担当者A>
Date: xxxxx
commit <担当者Aの変更コミットID②>
Author: <担当者A>
Date: xxxxx
commit <私の変更コミットID①>
Author: <私>
Date: xxxxx
commit <私の変更コミットID②>
Author: <私>
Date: xxxxx
commit <担当者Bの変更コミットID①>
Author: <担当者B>
Date: xxxxx
####リモートリポジトリへプッシュ
git push --set-upstream origin <ブランチA>
リモートリポジトリのブランチAの変更内容に、私のコミット①の取り消しが反映されたことを確認できた。
####次にもう1つの私のコミットをrevert
git revert <私の変更コミットID②>
> git log
commit <revertコミットID②>
Author: <私>
Date: xxxxx
commit <revertコミットID①>
Author: <私>
Date: xxxxx
commit <担当者Aの変更コミットID①>
Author: <担当者A>
Date: xxxxx
commit <担当者Aの変更コミットID②>
Author: <担当者A>
Date: xxxxx
commit <私の変更コミットID①>
Author: <私>
Date: xxxxx
commit <私の変更コミットID②>
Author: <私>
Date: xxxxx
commit <担当者Bの変更コミットID①>
Author: <担当者B>
Date: xxxxx
####再度、リモートリポジトリへプッシュ
git push --set-upstream origin <ブランチA>
リモートリポジトリのブランチAの変更内容に、私のコミット①、②の取り消しが反映されたことを確認できた。
##参考:
リモートに不要なコミットをプッシュしてしまった時にやったこと
リモートにプッシュしたコミットを取り消す
【git】revretしたcommitをまたrevertして戻した話