Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 233881
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T20:08:22+00:00 2026-05-11T20:08:22+00:00

Does anyone know what are the Git limits for number of files and size

  • 0

Does anyone know what are the Git limits for number of files and size of files?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-11T20:08:22+00:00Added an answer on May 11, 2026 at 8:08 pm

    This message from Linus himself can help you with some other limits

    […] CVS, ie it really ends up being pretty much oriented to a “one file
    at a time” model.

    Which is nice in that you can have a million files, and then only check
    out a few of them – you’ll never even see the impact of the other
    999,995 files.

    Git
    fundamentally never really looks at less than the whole repo. Even if you
    limit things a bit (ie check out just a portion, or have the history go
    back just a bit), git ends up still always caring about the whole thing,
    and carrying the knowledge around.

    So git scales really badly if you force it to look at everything as one
    huge repository. I don’t think that part is really fixable, although we
    can probably improve on it.

    And yes, then there’s the “big file” issues. I really don’t know what to
    do about huge files. We suck at them, I know.

    See more in my other answer: the limit with Git is that each repository must represent a “coherent set of files“, the “all system” in itself (you can not tag “part of a repository”).
    If your system is made of autonomous (but inter-dependent) parts, you must use submodules.

    As illustrated by Talljoe’s answer, the limit can be a system one (large number of files), but if you do understand the nature of Git (about data coherency represented by its SHA-1 keys), you will realize the true “limit” is a usage one: i.e, you should not try to store everything in a Git repository, unless you are prepared to always get or tag everything back. For some large projects, it would make no sense.


    For a more in-depth look at git limits, see “git with large files“
    (which mentions git-lfs: a solution to store large files outside the git repo. GitHub, April 2015)

    The three issues that limits a git repo:

    • huge files (the xdelta for packfile is in memory only, which isn’t good with large files)
    • huge number of files, which means, one file per blob, and slow git gc to generate one packfile at a time.
    • huge packfiles, with a packfile index inefficient to retrieve data from the (huge) packfile.

    A more recent thread (Feb. 2015) illustrates the limiting factors for a Git repo:

    Will a few simultaneous clones from the central server also slow down other concurrent operations for other users?

    There are no locks in server when cloning, so in theory cloning does not affect other operations. Cloning can use lots of memory though (and a lot of cpu unless you turn on reachability bitmap feature, which you should).

    Will ‘git pull‘ be slow?

    If we exclude the server side, the size of your tree is the main factor, but your 25k files should be fine (linux has 48k files).

    ‘git push‘?

    This one is not affected by how deep your repo’s history is, or how wide your tree is, so should be quick..

    Ah the number of refs may affect both git-push and git-pull.
    I think Stefan knows better than I in this area.

    ‘git commit‘? (It is listed as slow in reference 3.)
    ‘git status‘? (Slow again in reference 3 though I don’t see it.)
    (also git-add)

    Again, the size of your tree. At your repo’s size, I don’t think you need to worry about it.

    Some operations might not seem to be day-to-day but if they are called frequently by the web front-end to GitLab/Stash/GitHub etc then they can become bottlenecks. (e.g. ‘git branch --contains‘ seems terribly adversely affected by large numbers of branches.)

    git-blame could be slow when a file is modified a lot.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 243k
  • Answers 243k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Quite simply, inserting large amounts of records through manually saving… May 13, 2026 at 7:53 am
  • Editorial Team
    Editorial Team added an answer Do the following: In the New user Dialog click the… May 13, 2026 at 7:53 am
  • Editorial Team
    Editorial Team added an answer The simple answer is that InterruptedException is a checked exception… May 13, 2026 at 7:53 am

Related Questions

In the past I have really enjoyed using Trac with subversion repositories hosted on
I'm currently working in a team where we're using a subversion repository. I say
I'd like to know what are the most recurrent in a given text or
Update: What are the effects of including stdafx.h in my header files? I started

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.