SVN checkin has my name rather than the engineer's name

When people commit to git and the commit is mirrored to svn it goes into svn with me as the author rather than him.

This does not seem to match the algorithm mentioned in the documentation.

Is there something else I need to do?

It’s a well-known issue. The best way to fix the problem it is to enable ‘pre-revprop-change’ hook (i.e. create the hook, make sure it exits with zero exit code and make it executable)

After that the problem will be gone. It happens because probably SubGit works with Subversion on behalf you as SVN user. So the every revision is created on your behalf, that’s why you colleagues sees that author. Then (a couple of milliseconds later) SubGit tries to change the author of the revision to the correct author but by default this is not allowed unless ‘pre-revprop-change’ hook is enabled. Enabling the hook will solve the issue.

If you don’t have access to the SVN repository and cannot enable ‘pre-revprop-change’ hook there’re other (more tricky) options:

  • use file:/// (not recommended) or svn+ssh:// protocols if the server allows different options of access to the SVN repository;
  • if nothing above is possible for your, there’s a final bullet-proof solution:
  1. Add all the credentials of all SVN users to GIT_REPO/subgit/passwd (alternatively you can use a script to provide credentials ).
  2. Make sure GIT_REPO/subgit/authors.txt contains all the authors (alternatively use a script: ).
  3. Maintain (1) and (2) at every moment of time (i.e. make sure you add new entries if you have new colleagues).

In this case SubGit will work with Subversion on behalf of the SVN user which it calculates from authors.txt, and it uses a password from subgit/passwd. If it doesn’t find a relevant entry, it uses credentials of other SVN users from the top to bottom. So if you carefully maintain (1) and (2), SubGit will work with SVN on behalf of the correct SVN user (and your colleague in the case you describe). The downside is that you should keep in plain text format all the passwords (not just a password to one account) or write a script; and also take care of (1) and (2).

So enabling ‘pre-revprop-change’ hook is the cheapest option. I hope this information helps.