誤ってプッシュしてしまったコミットを取り消す方法です。
注意!
チームで開発している場合、git reset を用いたコミットの取り消しは、コンフリクトを起こしますので、git revert を用いてコミットの打ち消しを行って下さい。
それでも、IDやパスワードを記載してしまったソースコードをコミット、プッシュした場合に、どうしてもコミットを取り消してファイル自体を無かった事にしたい場合があると思います。そういう場合にプロジェクトマネージャーに相談して、git resetで取り消して貰うようにしましょう。
最良の方法はコミットと同時にプッシュしない事です。SourcetreeのようなGUIツールを使っているとやりがちですが、後で変更したくなったり、面倒な事になる事があります。(実際何度もなりました。)
コミットを取り消す
1 2 3 4 5 | $ git reset --soft <コミット ID> or $ git reset --hard <コミット ID> |
–softは最後のコミット以降に行った変更を残し、–hardは破棄します。
プッシュ
1 | git push -f |
コミットを削除しているので、リモートリポジトリと整合性が取れなくなっていますので、-fオプションを付けて強制的にプッシュします。
宮崎県在住。
プログラムを書いて暮らしています。趣味はルアーフィッシング、ギター。