Expand description
A file with directories of other git object databases to use when reading objects.
This inherently makes alternates read-only.
An alternate file in <git-dir>/info/alternates
can look as follows:
# a comment, empty lines are also allowed
# relative paths resolve relative to the parent git repository
../path/relative/to/repo/.git
/absolute/path/to/repo/.git
"/a/ansi-c-quoted/path/with/tabs\t/.git"
# each .git directory should indeed be a directory, and not a file
Based on the canonical implementation.
Modules
Enums
Functions
Given an
objects_directory
, try to resolve alternate object directories possibly located in the
./info/alternates
file into canonical paths and resolve relative paths with the help of the current_dir
.
If no alternate object database was resolved, the resulting Vec
is empty (it is not an error
if there are no alternates).
It is an error once a repository is seen again as it would lead to a cycle.