After some successful experiments with SubGit on a personal system about a year ago, I’m trying to use Subgit for the first time on a system where I work. I’m having some difficulties I don’t recall encountering then.
I’m setting up a mirror with SubGit 3.3.11, on a server running GitLab 13.9. The subversion server and client are 1.10.2, the OS is RHEL 8. I’ve created an empty GitLab project using GitLab’s root user.
The configure step appears to work correctly. I then edit the subgit/config file in the repository directory, specifying the URL like “svn+ssh://svnserver/path/repository” and then specify userName, sshKeyFile, and sshKeyFilePassphrase in the [auth “default”] section. I’ve commented all other lines in this section.
Then when attempting the install step, subgit responds with “INSTALLATION FAILED” followed by “error: svn: E215000: No matching credentials found.”
It seems to resemble this old issue, but the solution described there (removing the passphrase from the key) doesn’t work.
I’ve tried putting the username in the URL rather than the userName field, no difference in the result.
I’ve tried using the private key to ssh to the Subversion server manually (as the same user invoking subgit) and this works, after supplying the passphrase. This confirms that the user has access to the key file, it has the correct file permissions, the user on the Subversion server has its authorized_keys set up correctly, etc.
I’ve tried creating a ~/.ssh/config file with a host entry for the Subversion server, with an IdentityFile pointing to the private key. This works, and allows me to use svn on the command line (also requiring that I provide the passphrase). I’ve tried using subgit with and without this file in place. No difference in the result.
Looking at the syslog on the subversion server, it appears that no actual connection or login attempt is being made; it’s failing before getting to that point.
I’m not getting any logs from SubGit for this failed attempt. (All I see is the log from the configuration step). Is there some other way to get more information about what subgit is trying to do?