Edited at

え、同じファイル内でコミット分けられるんですか!? 便利なgitコマンドのオプション-p


知っておくだけで楽になることもあるんだなあ

先日こんなことがあった。

私「このファイルにあの処理を追記すると良さそうだね!」

私「さっそく書いちゃおうか( ^ω^ )」

友人「ちょっと待って!そのファイルにはまだコミットしてないとこあるから先にコミットしないと・・・」

友人「ええーと、ステージングして、コミットっと・・・」

私「こまめにコミットするのも良いけど」

私「同じファイル内でもコミット分けるのは簡単だよ( ^ω^ )」

友人「ええ!? コミットって後からでも分けられるの!!??」


同じファイル内でもコミットは分けられる

gitコマンドのオプションには知っておくとお得なものがいくつかあります。

その中でもgit addコマンドのオプション-pは一押し。


gitコマンド

git add -p ファイル


ファイルをステージングするgit addコマンドですが、

-pオプションを利用すればステージングするファイルの変更範囲(かたまりごとにhunkと言う)を取捨選択することができます。

実際にコマンドを実行すると、hunkごとに

git 「ここはステージングする??yesならy、noならnで答えてや」

と聞かれるので自分のステージングしたいhunkだけを選択しましょう。

ちなみにqで以降のhunkのステージングをまとめて却下(no)できます。


こうして少し幸せになれた。

知ってる人にとっては当たり前。でも、知らなかった人は少し幸せになれた(?)

今日も平和だね。