背景
最近 Monorepo を試しているのですが、いくつか既存のツールではやりにくい部分があったので、自分で作っています。今回紹介するのはその一つで、Git で Monorepo 用のコミットメッセージを書くツールです
Monorepo のコミットメッセージ辛い問題
Monorepo では全体を同じリポジトリで見られるのは便利なのですが、コミットメッセージを適当に書いてしまうと、どれに対する変更なのかがわかりづらくなります。
これについては、例えば [mypackage] Add hogehoge
という感じで対応することが多いと思いますが、これを手動で打つのは面倒です
つくったもの
コミットの内容から変更対象のパッケージ名を検出し、自動で [mypackage]
と入力してくれます。
使い方
Golang で作られているので、go get git@github.com:team-pianoforte/git-pianoforte
でインストールしてください。
その後、使用するリポジトリで git pianoforte install
することで機能が有効になります
デフォルトでは、packages
以下のディレクトリをパッケージとして認識します
仕組み
単純に、コミット対象のファイルの共通祖先を取り出しています。