|
|
|
|
|
by peff
3490 days ago
|
|
That is a nice writeup. One of the interesting things for me was to see which topics you decided to cover and which to omit. For instance, I noted `clone --reference --recurse-submodules` as a potential topic of interest, but I am afraid to point anybody to the `--reference` option due to its hidden dangers. I'm also curious how you came up with 19,290 for a birthday paradox on a 7-hex hash. I think it's 16,384, but probability can sometimes be tricky. :) |
|
I came up with 19,290 using the generalized birthday formula[0] (actually after double-checking it's slightly closer to 19,291).
16,384 is the value you get using the square approximation method[1] which I believe is a bit less accurate in terms of probability, but faster to calculate. I think Git's using square approximation under the hood -- which is probably a good thing since I think it'll always yield a more conservative result.
[0]: https://en.wikipedia.org/wiki/Birthday_problem#Cast_as_a_col...
[1]: https://en.wikipedia.org/wiki/Birthday_problem#Square_approx...