注意! なぜか私の環境では、この記事の方法では草を生やせなくなりました。それでも良いなら読み進めていただければ幸いです。
みなさんgituhubに「草」と呼ばれるものがあるのをご存知ですか?
そう、git commitや、git pushの数を視覚的に表してくれるものですね。
我らがmatzのように、コミット履歴が緑で埋まっているとかっこ良いですー
しかし、普段bitbucketや、gitlabを使っている人はgithubで草がスカスカになってしまいます。
これはかっこ悪い...
しかし、草を生やすためにgithubに乗り換えるのも面倒です。
そこで、プログラミングで草を自動的に生やしましょう。
草を生やすには
まず、awsや、gcpを使って、サーバーから適当なリポジトリにコミットしようとした貴方。このやり方ではgithubには草を生やすことは出来ません。bot行為として、githubはこれらのコミットを無視します。
そのため草を生やすには、ローカルマシンからコミットする必要があります。
毎日、自分のPCでbashスクリプト(git push)を定期実行出来れば、草を生やすことができます。
これに適した技術は....
crontabです。
crontabとは、
crontabコマンドはUnix系オペレーティングシステム において、コマンドの定時実行のスケジュール管理を行うために用いられるコマンドである。標準入力からコマンド列を読み取り、crontabと呼ばれるファイルにそれを記録する。この記録を元に定時になると、その命令内容を読み取り、実行が行われる。
wikipedia参照
便利なコマンドですねw
実装
1. 自分のアカウントで適当な名前のリポジトリ(wwwなど)を作成します。
2. .glassMakerというフォルダをルートフォルダに作成し、README.mdを作成します。
mkdir .glassMaker
cd .glassMaker
touch README.md
git init
git add .
git commit -m 'init'
git remote add origin 先ほど作成したリポジトリ
- ターミナルで
crontab -e
を実行すると、Vimでcrontabファイルが開かれるので、a と打ち込んで、インサートモードに入ってから、以下をペーストし、:wqと打って保存しましょう。
1 0 12 * * * cd $HOME/.glassMaker; echo "草ァ" >> README.md; git add .; git commit -m "www"; git push origin HEAD
左の*はcron記法というものです。左の*から順番に、分、時、日、月、年を表します。
この例だと、毎日昼の12時になるとgithubにプッシュが送られます。
完成!
これで、githubに大草原を作れました。
あとは、コミットメッセージを"Manage redbox updates by comparing exception IDs"のように、さも重要なコミットとして偽装したり、水曜日だけ3コミットするなどノイズを入れれば完璧です。