Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Changes to a Mercurial repository are stored as either a complete file or as a compressed delta against the previous version:</p> <p><a href="https://www.mercurial-scm.org/wiki/FAQ#FAQ.2BAC8-TechnicalDetails.How_does_Mercurial_store_its_data.3F" rel="nofollow noreferrer">https://www.mercurial-scm.org/wiki/FAQ#FAQ.2BAC8-TechnicalDetails.How_does_Mercurial_store_its_data.3F</a></p> <p>Mercurial makes the decision about whether to store a complete file versus a delta based on the amount of changes made.</p> <p>This means that it's not just adding lines of code that will increase the total size of a repository, but also:</p> <ol> <li>The number of changes made to existing code.</li> <li>The number of changes made to each file per commit.</li> <li>The number of files that are added and subsequently deleted.</li> </ol> <p>Mercurial retains all deleted files. You could add a 1GB file to your repository and then delete it; the number of lines hasn't increased, but because the file remains in the repository, the repository will be considerably larger.</p> <p>To answer your questions in turn:</p> <ul> <li><p>I imagine it's feasible to roughly estimate the size of a repository after x months, assuming that you maintain a steady rate of change to the repository in total (ie. you add/remove/alter files at the same rate, changing roughly the same number of lines per commit).</p></li> <li><p>Increasing the number of lines of code by 10% doesn't tell us how many lines were deleted/altered, so an increase in lines of code won't necessarily correspond to the same increase in repo size.</p></li> <li><p>Tags don't affect Mercurial repo size by more than a handful of bytes. Nor do branches, until you start working on them, at which point they add the same overhead as working on the tip. Number of commits should be reasonably proportional to the repo size, assuming the same rate of change occurs.</p></li> <li><p>Committing 10x as often probably won't increase the file size, as it is the rate of change that is the main influence on repo size, not number of commits.</p></li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload