コミットのタイミングは?

ソースコードの管理をしている場合、コミットするタイミングは、どのようにしてますか?私は区切りのよいところでするタイプです。*1
1日の終わりにリポジトリと diff をして、中途半端なコードでなければコミットします。また、どれぐらいコードをかいたんだろう?と、確認したくなったら同じ事をします。もちろん、あらかじめ決めていたタスクが完了したら、コミットをします。

毎日、中途半端でコミットするのはうるさいとおもうし、かといって機能別とかになると、コミットしなさすぎで開発の進行状況がわからないからです。コミットしない期間は最長三日ぐらいでしょうか。ログ見て「コミットしてない、まずいな」と適度なプレッシャーを掛けて、ひとまずコミット出来るコードにするか、一旦中断して、すぐにコミット出来るタスクを先にやります。

使い始めたときは、バックアップの意味があったのですが、今では日記(何をやったのか記録する。)に近い感じになりました。過去に自分が何をしていたのか分かると、続きや機能の変更を行うのが楽になりますから。

*1:複数人数での経験はないです。