注: これはジョーク的な記事です。
また、GitHubの仕様を細かく調べたわけではないので、このやり方が最適解とは限りません。
もしあなたがGitHubで毎日熱心に草を生やすことに励んでいたとする。
ただ、うっかり、その日は用事が重なり、草を生やすことを忘れてしまった。
なんとかして思わず空いてしまった草を生やすことはできないか...
(イメージとしては下記のような感じ。10月30日が空いてしまっている)
Gitのコミット履歴でAuthorDateとCommitDateを改竄する
GitHubの仕様を細かく調べたわけではないが、GitHubの草についてはGitのコミット時刻を参照しているものと思われる。
今回は、新たにリポジトリを立てて、そちらのコミット時刻を改竄することで生やされなかった草を生やそうという試みとなる。
以下、作業手順を淡々と記述していく。
2.そのリポジトリをローカルにクローンする
3. 適当な内容でコミットする
4. GitでAuthorDateとCommitDateを改竄する
実際に打ったコマンドはこちら。
GIT_COMMITTER_DATE="Fri Oct 30 12:30:27 2020 +0900" git commit --amend --date="Fri Oct 30 12:30:27 2020 +0900"
GIT_COMMITTER_DATE="Fri Oct 30 12:30:27 2020 +0900"
で CommitDate
が
--date="Fri Oct 30 12:30:27 2020 +0900"
の箇所で AuthorDate
が、それぞれ指定の時刻に書き換わる。
今回の場合、どちらも同じ時刻を指定している。
5.AuthorDateとCommitDateが変わったことを確認する
下記のコマンドを打つと、AuthorDateとCommitDateが変わったことが確認できる。
git log -1 --pretty=fuller
下記の画像で、実際に生えるはずのなかった草が生えていることが確認できる。
以上の作業を実際に行ったリポジトリが下記となる。
最後に
昨日はハロウィンだったので、なにかイタズラっぽい(トリック・オア・トリートにちなんでいる)ネタ的なことがしたいと思ってやってみた。
あくまでこれはネタなので、実際の開発環境などではやらないほうが良い。