極端に線形な Git History を維持する
(westling.dev)- 最初のコミットはハッシュが
0000000で始まり、2番目は0000001のように増えるようにして、直感的に番号が見える形で管理する方式 - このようなハッシュの先頭値を見つけるには、コミットメッセージにジャンクデータを入れて SHA-1 ハッシュを調整する必要がある
- MacBook で
githashcrashツールを使うと、8文字のハッシュ先頭なら5分、6文字なら1秒以内に見つけられる bash-glueを使って、これをgit linearizeという名前で自動化するlucky-commitをハッシュ生成バックエンドとして使えば、GPU を使って 20 倍速く生成できる
→ lucky-commit はジャンクテキストではなく目に見えない空白文字を使ってコミットメッセージを修正するため、見た目もそれほど悪くない
9件のコメント
面白いですね(笑)。先頭8文字ならジャンクデータもそんなに長くないですね。
www……リーナスが見たら何て言うのか、すごく気になる……
ブロックチェーンのnonce値を計算するのと何となく似ているような……
svn を使えば、リビジョン番号がきれいに積み上がるのに……
差し出がましいようですが、1つ目が0000000なら2つ目は0000001ではないでしょうか? 誤字のようです(笑)..
うっ 笑 修正しておきました。
潔癖症を感じるほどですね。
それでも、アイデアを思いついて実行に移したのはすごいです。
単なる brute-force なのでしょうか
ビットコインのマイニング方式みたいですね(笑)
GitHub を取引所に!