b6b0b6fef0
The Go test suite adds remotes in the form of temporary bare Git repositories, which lack a ".git" directory. These are then configured with their local paths as the value of the "remote.origin.url" key, which the EndpointFinder returns, but with "/.git" appended by the EndpointFromLocalPath() function. When the standalone transfer adapter attempts to chdir(2) to one of these file paths in order to run the "git rev-parse --git-dir" command when setting up a new handler, it obviously fails. We can address this by simply removing any trailing "/.git" path segment in the gitDirAtPath() function in the standalone adapter. The "git rev-parse --git-dir" command will succeed in either case, whether in a bare repository or a regular one. This should permit any users who have Git LFS configurations with custom adapters that depend on the EndpointFinder's current logic to continue to work, while allowing our Go test suite to succeed with its bare remote repositories. |
||
---|---|---|
.. | ||
standalone.go |