title: What overheads on server-side are there when signing Git commits?
body: <p>Git provides a way to <a href="https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work" rel="nofollow noreferrer">sign commits</a> using GPG keys. What additional overheads are involved on the git server-side (e.g. <a href="https://github.com/enterprise" rel="nofollow noreferrer">GitHub Enterprise</a>, <a href="https://about.gitlab.com/pricing/#self-managed" rel="nofollow noreferrer">GitLab Self-Managed</a>, etc.) compared to the same commit without signing?</p>
  
  <ul>
  <li>How much more <strong>storage</strong> is needed per commit? Is it only the GPG key ID that is stored additionally? Or is something else also being stored.</li>
  <li>How much more <strong>processing</strong> is needed per commit? Does git need to perform some resource intensive operation to verify the commits? Or only the GPG key ID is checked?</li>
  <li>How much more data is sent over the <strong>network</strong> when pushing the commits? Only the GPG key ID or something more?</li>
  </ul>
  
  <p>To be a little more concrete, between these examples, how much more overhead is incurred on the server-side?</p>
  
  <p>Example 1 - with signing</p>
  
  <pre class="lang-sh prettyprint-override"><code>git add example.txt
  git commit -S -m 'My Commit'
  git push
  </code></pre>
  
  <p>Example 2 - without signing</p>
  
  <pre class="lang-sh prettyprint-override"><code>git add example.txt
  git commit -m 'My Commit'
  git push
  </code></pre>
  
  <p><code>example.txt</code> (Not sure if this matters though)</p>
  
  <pre><code>Hello World!
  </code></pre>