Notices: This section not yet converted to new layout. Download stats are rolling back out.

git-sizer

1.3.0

Package test results are passing.

This package was approved as a trusted package on 5/31/2019.

Please Note: This is an automatically updated package. If you find it is out of date by more than a day or two, please contact the maintainer(s) and let them know the package is no longer updating correctly.

Is your Git repository bursting at the seams?

git-sizer computes various size metrics for a 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.

  • 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.

  • Does the repository include too many objects? The more objects, the longer it takes for Git to traverse the repository's history, for example when garbage-collecting.

  • Does the repository include gigantic blobs (files)? Git works best with small- to medium-sized files. It's OK to have a few files in the megabyte range, but they should generally be the exception.

  • Does the repository include many, many versions of large text files, each one slightly changed from the one before? Such files delta very well, so they might not cause your repository to grow alarmingly. But it is expensive for Git to reconstruct the full files and to diff them, which it needs to do internally for many operations.

  • Does the repository include gigantic trees (directories)? Every time a file is modified, Git has to create a new copy of every tree (i.e., every directory in the path) leading to the file. Huge trees make this expensive. Moreover, it is very expensive to traverse through history that contains huge trees, for example for git blame.

  • Does the repository have the same (or very similar) files repeated over and over again at different paths in a single commit? If so, the repository might have a reasonable overall size, but when you check it out it balloons into an enormous working copy. (Taken to an extreme, this is called a "git bomb".)

  • Does the repository include absurdly long path names? That's probably not going to work well with other tools. One or two hundred characters should be enough, even if you're writing Java.

  • Are there other bizarre and questionable things in the repository?

    • Annotated tags pointing at one another in long chains?

    • Octopus merges with dozens of parents?

    • Commits with gigantic log messages?

git-sizer computes many size-related statistics about your repository that can help reveal all of the problems described above. These practices are not wrong per se, but the more that you stretch Git beyond its sweet spot, the less you will be able to enjoy Git's legendary speed and performance. Especially if your Git repository statistics seem out of proportion to your project size, you might be able to make your life easier by adjusting how you use Git.

To install git-sizer, run the following command from the command line or from PowerShell:

C:\> choco install git-sizer

To upgrade git-sizer, run the following command from the command line or from PowerShell:

C:\> choco upgrade git-sizer

Files

Hide
  • legal\LICENSE.txt Show
    MIT License
    
    Copyright (c) 2018 GitHub
    
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the "Software"), to deal
    in the Software without restriction, including without limitation the rights
    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    copies of the Software, and to permit persons to whom the Software is
    furnished to do so, subject to the following conditions:
    
    The above copyright notice and this permission notice shall be included in all
    copies or substantial portions of the Software.
    
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    SOFTWARE.
    
  • legal\VERIFICATION.txt Show
    VERIFICATION
    
    Verification is intended to assist the Chocolatey moderators and community
    in verifying that this package's contents are trustworthy.
    
    Package can be verified like this:
    
    1. Go to
    
       x32: https://github.com/github/git-sizer/releases/download/v1.3.0/git-sizer-1.3.0-windows-386.zip
       x64: https://github.com/github/git-sizer/releases/download/v1.3.0/git-sizer-1.3.0-windows-amd64.zip
    
       to download the installer.
    
    2. You can use one of the following methods to obtain the SHA256 checksum:
       - Use powershell function 'Get-FileHash'
       - Use Chocolatey utility 'checksum.exe'
    
       checksum32: ABAD6350E72F848117B6B12B3FA0F7695A1DD9ED87B5DEC8E7D2E65246753DBF
       checksum64: 15D9E56C10F81612796E8CBE6FF8E53EECFBABAE1770B4A557252FCE6E6ADDCE
    
    Using AU:
    
       Get-RemoteChecksum https://github.com/github/git-sizer/releases/download/v1.3.0/git-sizer-1.3.0-windows-386.zip  # 32-bit
       Get-RemoteChecksum https://github.com/github/git-sizer/releases/download/v1.3.0/git-sizer-1.3.0-windows-amd64.zip  # 64-bit
    
    File 'license.txt' is obtained from:
       https://raw.githubusercontent.com/github/git-sizer/v1.3.0/LICENSE.md
    
  • tools\chocolateyinstall.ps1 Show
    $ErrorActionPreference = 'Stop'; # stop on all errors
    
    $packageName= 'git-sizer'
    $toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
    $zip32 = 'git-sizer-1.3.0-windows-386.zip'
    $zip64 = 'git-sizer-1.3.0-windows-amd64.zip'
    
    $packageArgs = @{
      packageName    = $packageName
      FileFullPath   = Join-Path $toolsDir $zip32
      FileFullPath64 = Join-Path $toolsDir $zip64
      Destination    = $toolsDir
    }
    
    Get-ChocolateyUnZip @packageArgs
    
  • tools\git-sizer-1.3.0-windows-386.zip Show
    md5: A8371667DC008561BA2EFB7464108B9F | sha1: AAE891F2CCA374E20DE4C9A37C912DA80DE0098D | sha256: ABAD6350E72F848117B6B12B3FA0F7695A1DD9ED87B5DEC8E7D2E65246753DBF | sha512: 14FEC96A4350988F6FCE49E6699F44E9CE8972835097A861BAB5E40046E33742A418A59067AA5E1EBAA917A11FDAE7247A9CAD7B43F6735C15BC7ED3ED5F1F22
  • tools\git-sizer-1.3.0-windows-amd64.zip Show
    md5: C0A75C4394C1F3A538288F0A975149A5 | sha1: AC7DF915FDD1024F5FDA36B69AA1764F99A4307A | sha256: 15D9E56C10F81612796E8CBE6FF8E53EECFBABAE1770B4A557252FCE6E6ADDCE | sha512: 10F4FF5C7F366604B24C896A16021942F48402BCE3991658C684CE0E5C63F4EC52AADDE3CCCD536DA954F67EBEF1F30886B01831C2A72BAC9145C585B4B3E653

Virus Scan Results

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Dependencies

    • git (≥ 1.8.5)

Package Maintainer(s)

Software Author(s)

  • GitHub

Copyright

Copyright © 2018 GitHub

Tags

Release Notes

https://github.com/github/git-sizer/releases/tag/v1.3.0

Version History

Version Downloads Last updated Status
git-sizer 1.2.0 182 Sunday, April 15, 2018 approved
git-sizer 1.1.0 139 Friday, March 16, 2018 approved
git-sizer 1.0.0 139 Tuesday, March 6, 2018 approved

Discussion for the git-sizer Package

Ground rules:

  • This discussion is only about git-sizer and the git-sizer package. If you have feedback for Chocolatey, please contact the google group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or git-sizer, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.

comments powered by Disqus
Chocolatey.org uses cookies to enhance the user experience of the site.
Ok