Git
AdventCalendar
GitDay 22

git reset を怖がらずに便利に利用してみよう。

More than 5 years have passed since last update.

reset コマンドって怖いもの・・?

たまに話題になるんですが、

 git reset

コマンドを利用するときに「怖い」とか「あまり使う気になれない」みたいな話を聞きます。でも個人的には「気軽に使える便利なコマンド」のひとつなので、その理由とかを紹介したいと思います。

※別に怖がったりしてないって人にはつまらないエントリになると思います。

git で怖いコマンドとは?

そもそも大前提として、「git に怖いコマンドなんてほとんどない」と思っています。その理由は「pushさえしておけば、ローカルは壊れてもいいから」に尽きると思っているからです。

なので怖いコマンドとなると以下みたいなコマンドですね。

git push origin :master

リモートブランチ削除なんてしたら大変です。^^;

git push -f origin master

便利そうで一番使ってはいけないコマンドの一つだと思っています^^;

git gc

唯一リモート関係ないコマンドですが、reflogが参照できなくなるので怖いです。

reset をつかって unstage

git reset --soft

一番使う便利resetコマンドですね!

間違えてコミットしてしまったものをresetしたり、add してしまったものをunstagedに戻したい場合に結構使っています。

reset --hard で気軽なリセット

git reset --hard

個人的には結構頻繁に利用するコマンドです。
バージョン管理の真骨頂、「いつでも過去に戻れる」っつーコマンドですね。
ちょっと違う使い方としては「作業内容をリセット」するのにも使ったりしています。かなり便利ですよ。

怖がらず気軽にリセット!

ということで、もしも怖がっていた方も今日からバシバシ git reset してください!w