Gitでバージョン管理する場合、ちゃんと差分をチェックしてコミット&プッシュした方が良いのは分かります。しかし、個人のリポジトリでバックアップ代わりに運用するならば自動でプッシュしてくれる方が便利です。 そこで使ってみたいのがgitomaticです。指定したディレクトリを監視して自動でファイルの追加、プッシュを行ってくれます。

gitomaticの使い方

ディレクトリを指定するだけで動作開始します。後はファイルを追加したり、編集したりするだけです。

$ ./gitomatic ./push-test/
git-o-matic
2019/08/10 15:57:22 Checking repository: ./push-test/
2019/08/10 15:57:22 Pulling changes...
2019/08/10 15:57:24 No changes detected.
2019/08/10 15:57:24 Sleeping until next check in 1m0s...
2019/08/10 15:58:24 Checking repository: ./push-test/
2019/08/10 15:58:24 Pulling changes...
2019/08/10 15:58:26 New file detected: NEW.md
2019/08/10 15:58:26 Adding file to work-tree: NEW.md
2019/08/10 15:58:26 Modified file detected: README.md
2019/08/10 15:58:26 Adding file to work-tree: README.md
2019/08/10 15:58:26 Creating commit: Add NEW.md.
Update README.md.
2019/08/10 15:58:26 Pushing changes...
2019/08/10 15:58:30 Sleeping until next check in 1m0s...

基本は1分ごとの監視ですが、インターバルは指定できます。また、プッシュはなしでコミットだけという指定も可能です。個人の作業ディレクトリ、ついコミットを忘れてしまうと言う方にとっても便利そうです。

gitomaticはGo製のオープンソース・ソフトウェア(MIT License)です。

muesli/gitomatic: A tool to monitor git repositories and automatically pull & push changes