title: When should pdf files be tracked in a Git repository and when not
body: <p>I am developing a LateX package (<a href="http://www.openlilylib.org/lilyglyphs" rel="noreferrer">http://www.openlilylib.org/lilyglyphs</a>) which contains a number of small PDF files. Currently there are only a few dozens of them but as the package and its user base grows there will probably hundreds of them (but unlikely more than 1000).</p>
  
  <p>The PDFs are typically only a few KB in size, but I don't know whether to track them in the Git repository. The files are subject to change at any time, but probably not too often.<br>
  Usually one is told not to track binary files which can't be diffed, but I also have read that this doesn't really matter with smaller files and a smaller overall volume. I think in the end the PDFs will sum up to not more than a few MB in total.</p>
  
  <p>The package will be available as a download or through the Git repository which I prefer because <em>using</em> the package quite naturally leads to <em>contributing</em> ...<br>
  Currently when cloning the Git repository one has to rebuild the pdfs using Python and the LilyPond notation software so the stakes are rather high - which is why I would like to have the pdfs directly in the repo.</p>
  
  <p>Any thoughts?</p>
  
  <hr>
  
  <p>EDIT in response to answers/comments:</p>
  
  <p>The pdf files <em>are</em> generated from the sources in the repository, which is why I'm reluctant to track them in Git.<br>
  But:</p>
  
  <ul>
  <li>The pdfs are necessary to use the package so the user needs to have them</li>
  <li>To generate the pdfs one needs Python as well as LilyPond, and both of them are <em>not</em> necessary to use the package. So I feel it is a too big burden to require someone to install two programs just to install my package.<br>
  I don't see a problem requiring someone who decides to clone a Git repo to run an install script, but the software dependencies are maybe too high?</li>
  <li>Currently generating the pdfs finishes in reasonable time because there are only a few dozens. But with a growing number of files this time could become inacceptable.</li>
  </ul>
  
  <p>The pdf files change when they are updated/corrected. This won't happen often, and I think this is covered by tracking the source code. But the pdfs will also change whenever there is  a new version of LilyPond available, which may be every two to four weeks. So while the source remains the same the pdfs will change regularely - which is a clear indicator against tracking them with Git.<br>
  On the other hand we are talking about (possibly) a few hundred files of a few KB each, so I don't know if it's worth bothering about the issue at all.</p>