Skip to main content
Jump to: navigation, search

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] https://lore.kernel.org/git/CAFQ2z_PvKiz==GyS6J1H1uG0FRPL86JvDj+LjX1We4-yCSVQ+g@mail.gmail.com

Other Changes

The complete list of new features and bug fixes is available in the release notes.

Contributors

The following 22 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

Back to the top