JGit/New and Noteworthy/5.7
JGit
Reftable
- The repository layout for reftable format was improved. Previously, the list of tables was in
.git/refs
. This makes repository detection fail in older clients, which is undesirable. This proposal was discussed and approved on the git@vger list at [1]. For backward compatibility, JGit could detect a file under.git/refs
and use it as a reftable list.
The new layout addresses the following problems:
- old git clients will not recognize reftable-based repositories, and look at encompassing directories.
- Poorly written tools might write directly into
.git/refs/heads/BRANCH
.
Since we consider JGit reftable as experimental (git-core doesn't support it yet), we have no backward compatibility. If you created a repository with reftable between mid-Nov 2019 and now, you can do the following to convert:
mv .git/refs .git/reftable/tables.list git config core.repositoryformatversion 1 git config extensions.refStorage reftable
[1] [1]
Other Changes
The complete list of new features and bug fixes is available in the release notes.
Contributors
The following 2 developers worked on this release:
Alex Blewitt, Alex Jitianu, Alex Spradlin, Andre Bossert, Andrey Loskutov, Carsten Hammer, David Pursehouse, Demetr Starshov, Emmanuel Hugonnet, Han-Wen Nienhuys, Jonathan Nieder, Jonathan Tan, Joshua Redstone, Lajos Olah, Lars Vogel, Masaya Suzuki, Matthias Sohn, Michael Dardis, Michael Keppler, Terry Parker, Thomas Wolf, Yunjie Li