Skip to content

Instantly share code, notes, and snippets.

@pansila
Created April 16, 2022 14:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pansila/c0b9fb5c8bf89f3928d62603b8ccd416 to your computer and use it in GitHub Desktop.
Save pansila/c0b9fb5c8bf89f3928d62603b8ccd416 to your computer and use it in GitHub Desktop.
List all Git repository objects by size
import subprocess
from tqdm import tqdm
files = []
commitSHA1 = subprocess.check_output(['git', 'rev-list', '--all'], text=True)
for c in tqdm(commitSHA1.splitlines()):
files.extend(subprocess.check_output(['git', 'ls-tree', '-r', '--long', c], text=True).splitlines())
files.sort(key=lambda x: x.split()[2])
files = list(set(files))
files.sort(key=lambda x: int(x.split()[3]), reverse=True)
print('\n'.join(files[:100]))
@pansila
Copy link
Author

pansila commented Mar 4, 2023

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment