Post

コミット入れ替えたい

問題点

994bb38 と 66790c3 を一緒にプッシュしてしまった。

要 望

66790c3 分をプッシュ結果から削除したい。

解決策

994bb38 と 66790c3 のコミットを入れ替えて、最新のコミットを 994bb38のファイル一覧のみにする。 その後強制プッシュすることで要望を叶える。

$ git log --oneline --name-status 994bb38 実装完了 A src/main/java/businesslogic/ctrl/DislikeFinish.java M src/main/java/com/omiai_jp/api/exception/DislikeFinishInvalidException.java M src/main/java/com/omiai_jp/api/exception/UnknownException.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRo.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRw.java A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRo.xml A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRw.xml M src/main/resources/strings/exception.xml 66790c3 実装完了 A src/main/java/businesslogic/ctrl/AddMessage.java M src/main/java/com/omiai_jp/api/exception/MessageSentInvalidException.java M src/main/java/com/omiai_jp/api/exception/OriginalMessageInvalidException.java M src/main/java/com/omiai_jp/api/exception/ParameterException.java A src/main/java/com/omiai_jp/common/ProfileAssignUsers.java A src/main/java/dao/businesslogic/ctrl/AddMessageRo.java A src/main/java/dao/businesslogic/ctrl/AddMessageRw.java A src/main/java/dao/common/ProfileAssignUsersRo.java A src/main/resources/dao/businesslogic/ctrl/AddMessageRo.xml A src/main/resources/dao/businesslogic/ctrl/AddMessageRw.xml A src/main/resources/dao/common/ProfileAssignUsersRo.xml

対応手順

1)最新と一つ前のコミットを入れ替える。

$ git rebase -i HEAD~2 pick 994bb38 実装完了 viモードになるので、この1行目と2行目を入れ替えて保存(:wq!)する pick 66790c3 実装完了

2)確認

$ git status cbdc37e 実装完了 (←コミットIDは変わっている) A src/main/java/businesslogic/ctrl/AddMessage.java M src/main/java/com/omiai_jp/api/exception/MessageSentInvalidException.java M src/main/java/com/omiai_jp/api/exception/OriginalMessageInvalidException.java M src/main/java/com/omiai_jp/api/exception/ParameterException.java A src/main/java/com/omiai_jp/common/ProfileAssignUsers.java A src/main/java/dao/businesslogic/ctrl/AddMessageRo.java A src/main/java/dao/businesslogic/ctrl/AddMessageRw.java A src/main/java/dao/common/ProfileAssignUsersRo.java A src/main/resources/dao/businesslogic/ctrl/AddMessageRo.xml A src/main/resources/dao/businesslogic/ctrl/AddMessageRw.xml A src/main/resources/dao/common/ProfileAssignUsersRo.xml 6b37f16 実装完了 (←コミットIDは変わっている) A src/main/java/businesslogic/ctrl/DislikeFinish.java M src/main/java/com/omiai_jp/api/exception/DislikeFinishInvalidException.java M src/main/java/com/omiai_jp/api/exception/UnknownException.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRo.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRw.java A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRo.xml A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRw.xml M src/main/resources/strings/exception.xml

3)6b37f16 を最新のコミットにする

$ git reset --hard 6b37f16

4)確認

$ git log --oneline --name-status 6b37f16 実装完了 A src/main/java/businesslogic/ctrl/DislikeFinish.java M src/main/java/com/omiai_jp/api/exception/DislikeFinishInvalidException.java M src/main/java/com/omiai_jp/api/exception/UnknownException.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRo.java A src/main/java/dao/businesslogic/ctrl/DislikeFinishRw.java A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRo.xml A src/main/resources/dao/businesslogic/ctrl/DislikeFinishRw.xml M src/main/resources/strings/exception.xml
This post is licensed under CC BY 4.0 by the author.