title: git fsck error: "contains full pathnames"
body: <p>I have encountered an odd problem with a git repository. <code>git fsck</code> does not complain after doing a <strong>fresh</strong> clone of repository; but after committing a small change, the following error shows up:</p>
  
  <pre><code>Checking object directories: 100% (256/256), done.
  warning in tree [sha1]: contains full pathnames
  Checking objects: 100% (1481/1481), done.
  </code></pre>
  
  <p>And <code>git push</code> is also unsuccessful:</p>
  
  <pre><code>Counting objects: 10, done.
  Delta compression using up to 4 threads.
  Compressing objects: 100% (10/10), done.
  Writing objects: 100% (10/10), 2.52 KiB | 0 bytes/s, done.
  Total 10 (delta 9), reused 0 (delta 0)
  remote: error: object [sha1]:contains full pathnames
  remote: fatal: Error in object
  error: unpack failed: index-pack abnormal exit
  </code></pre>
  
  <p><code>git rev-list --objects --all</code> for the relevant sha1 does not show anything resembling a full path.</p>
  
  <p>Besides, this error has only been exhibited on specific OS &mdash; to be specific, git 2.3.1 on certain OpenSolaris x86 derivative. It does not happen for git 2.4 on other platforms (Linux, Windows and FreeBSD tested). Adding more mystery, Google does not yield any result of anybody complaining about such error. So I wonder if this is just a git bug on specific situation, or any problem in the repository itself, as well as if there's any remedy.</p>