mike、mikeなるままに…

プログラムに関してぬるま湯のような記事を書きます

SourceTreeで細かくコミットする

gitのコミットの粒度はなるべく細かいほうがいいですよね

こんにちわ、みけです。

今日はgitの話です。

表題にあるようにgitは細かくコミットしたほうがよいです。

なぜなら、

  • mergeが簡単にできる
  • やらかした時に細かいレベルで元に戻れる
  • 細かければpushするときにまとめればいいや的な

といったメリットがあるからと思っています。

詳細はこっちの記事読んだほうがいいです。

いや、そんなこと言ったってコミット頻繁にしてないっすよ

これ、僕のことで、そもそもコミットを頻繁にしていないので、Work Treeに変更がたくさん溜まってしまいます。

そうすると、僕のようなdullな人がgit addする時はgit add -pで小分けにしながらステージに載せていくのですが、Hunkのサイズを変えるのに一々git add -pの後にsをしているとわりと面倒い。(参考 – Can I modify git-add’s hunk size?)

まあ、かといって、「gitできない奴はVSSでもやってろよ」とか言われると辛い…

そこでSourceTreeですよ

Atlassianの回し者ではありませんが、SourceTreeがそんな僕には便利です。

変更が溜まりに溜まったwork tree

hunkがでかすぎるので小さくします。

hunkが細かくなります。

さらに行単位で変更を選びます

意味のある単位にまとまったのでコミットします

commitボタンを推します。

適度な粒度でコミットしたのでプッシュします。

pushボタンのところにプッシュされていないコミットの数が出ています。

pushボタンを押してプッシュします。

プッシュ完了すると、ローカルとリモートが一致した状態になります。

細かい粒度でコミット出来ましたね

  • SourceTree、マジ便利、マジ神、ハンパないです。
  • いや、そもそもそんなにWork Treeに変更を溜め込むなという話ですね…