{"repo":"github/git-sizer","free":true,"listed":false,"github":"https://github.com/github/git-sizer","clone":"git clone https://github.com/github/git-sizer.git","description":"Compute various size metrics for a Git repository, flagging those that might cause problems","language":"Go","stars":4070,"topics":["git","github","golang"],"license":"MIT","category":"analytics","readme_excerpt":"Happy Git repositories are all alike; every unhappy Git repository is unhappy in its own way. —Linus Tolstoy git-sizer Is your Git repository bursting at the seams? git-sizer computes various size metrics for a local Git repository, flagging those that might cause you problems or inconvenience. For example: Is the repository too big overall? Ideally, Git repositories should be under 1 GiB, and (without special handling) they start to get unwieldy over 5 GiB. Big repositories take a long time to clone and repack, and take a lot of disk space. Suggestions: Avoid storing generated files (e.g., compiler output, JAR files) in Git. It would be better to regenerate them when necessary, or store them in a package registry or even a fileserver. Avoid storing large media assets in Git. You might want to look into Git-LFS or git-annex, which allow you to version your media assets in Git while actually storing them outside of your repository. Avoid storing file archives (e.g., ZIP files, tarballs) in Git, especially if compressed. Different versions of such files don't delta well against each other, so Git can't store them efficiently. It would be better to store the individual files in your repository, or store the archive elsewhere. Does the repository have too many references (branches and/or tags)? They all have to be transferred to the client for every fetch, even if your clone is up-to-date. Try to limit them to a few tens of thousands at most. Suggestions: Delete unneeded tags and","default_branch":null,"files":null,"tree":[],"storefront":"/r/github","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/github/git-sizer/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}