Eclipse JGit: Java implementation of Git 4.5.4

This releases provides workarounds for problems which may occur when running multiple JGit processes on different machines against repositories residing on the same shared NFS filesystem.


Fix LockFile semantics when running on NFS


When running on NFS there was a chance that JGits LockFile semantic is broken because File#createNewFile() may allow multiple clients to create the same lock file in parallel. If the new config option core.supportsAtomicCreateNewFile is true then File#createNewFile() is trusted and the behaviour doesn't change. If core.supportsAtomicCreateNewFile is set to false then after successful creation of the lock file use the workaround described in [1] to avoid the problem.


[1], section III.d) "Exclusive File Creation"


Honor trustFolderStats also when reading packed-refs

Then the list of packed refs was cached in RefDirectory based on mtime of the packed-refs file. This may fail on NFS when file attributes are cached. A cached mtime of the packed-refs file could cause JGit to trust the cached content of this file and to overlook that the file is modified. Honor the config option trustFolderStats and always read the packed-refs content if the option is false. By default this option is set to true and this fix is not active.

Release Date
Release Type
Service release (bug fixes only)