Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Code Block

SVN authors mapping

SmartGit does not support Git config svn.authorsfile, but provides a similar mechanism via system property smartgit.svn.authorsfile: the specified file is respected when translating SVN revisions to Git commits. For the opposite direction it's the SVN server which chooses the revision author (usually the same as the credentials username). The file format is the same as git-svn's authors file (for --authors-file option). File encoding is UTF-8 (since version 17.1).


On Windows, if your authors-file is located at c:\temp\svn.authors, set the system property to:


System properties affecting the SVN integration

Following system properties can used to customize the SVN integration:


Set to false to disable the possibility to clone SVN repositories.


Set to true to have SVN connection logging enabled. This will create a connection.log in SmartGit's settings directory which will be helpful for error diagnosis.


For certain SVN repositories, the .gitattributes file may become very large, which would slow down various (Smart)Git operations. For that reason, the mapping of svn:eol-style and svn:mime-type will be disabled if the size of the .gitattributes file exceeds the threshold specified by the specified value (in bytes). For more information, see To have the .gitattributes mapping always enabled, you may set the threshold to a large value.


Set to true to enable recursion into unchanged SVN submodules when a submodule update is performed. This may be useful if you always want to fetch the latest revisions from an SVN repository even if the svn:external which is mapped to .gitsvnextmodules does require fetching these revisions.


Set to false to prevent glueing of multiple revisions together when performing an SVN clone. Glueing revisions together improves performance and usually has no negative side-effects. Sometimes, for large repositories, it may result in out-of-memory errors, though.


Set to true to scan (refresh) SVN sub-modules for non-SVN parent repositories.


Use this option to change the default SVN "commit message" when e.g. pushing a tag. There are a couple of variables, which will be replaced by proper strings: {Action}, {Actiond}, {action}, {actiond}, {target}, {source}, {sourceRevision}.


Some example definitions:

Code Block
{Actiond} {target}{ from {source}{:{sourceRevision}}}
{target} {action} { from {source}{:{sourceRevision}}}

Known Limitations