背景
railsアプリを個人開発していて、WEBPACK絡みでかなりハマり、gitの重要性が身に染みました。
gitがなかったらと思うとゾッとします…
使用したgitコマンド
##①revert
$ git revert <コミットID>
revertはコミットを打ち消すコマンドです。
特徴としては、コミットを消去するわけではなく、指定したコミットと逆のことをするコミットをこの一つのコマンドで作成します。
例えば、一旦追加した機能一度オフにして、後からもう一度追加したい場合などに便利です。
##②log
$ git log --oneline
revertするには、コミットIDが必要になります。カレントブランチのコミット一覧をこのコマンドで確認できます。
(Qボタンでエスケープできます。)
##③reset
$ git reset --hard <コミットID>
指定したコミットIDを消去できます。問題のあったコミットを削除する際に便利です。
##④checkout
$ git checkout -b ブランチ名
指定したブランチ名への切り替えと作成を同時に行ってくれます。
##⑤status
$ git status
カレントブランチやワーキングツリー(ステージング前の変更されたファイル)、コミット待ち(ステージングされたもの)の情報を見ることができます。
反省点
これまでコミットの中身が滅茶苦茶でした。git revertする上で、これが本当に厄介でした。
それを踏まえて、今後は下記に注意してコミットする。
・コミットのメッセージとコード変更点は関連のあるものだけにする。
・機能実装と環境関係の変更を同じコミットに含めず、分ける。
・必ず、ブランチを切って作業する。
・切られたブランチ内のコミットもブランチと関連性のあるものだけにする。
.不具合がでている時はコミットしない。