コミット入れ替えたい
問題点
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