HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/share/doc/git/contrib/stats/git-common-hash
#!/bin/sh

# This script displays the distribution of longest common hash prefixes.
# This can be used to determine the minimum prefix length to use
# for object names to be unique.

git rev-list --objects --all | sort | perl -lne '
  substr($_, 40) = "";
  # uncomment next line for a distribution of bits instead of hex chars
  # $_ = unpack("B*",pack("H*",$_));
  if (defined $p) {
    ($p ^ $_) =~ /^(\0*)/;
    $common = length $1;
    if (defined $pcommon) {
      $count[$pcommon > $common ? $pcommon : $common]++;
    } else {
      $count[$common]++; # first item
    }
  }
  $p = $_;
  $pcommon = $common;
  END {
    $count[$common]++; # last item
    print "$_: $count[$_]" for 0..$#count;
  }
'