'fetch'. If 'filename' is
not found, it is searched like any other command in '$PATH'.
+
[verse]
config key: svn.authorsProg
-q::
--quiet::
Make 'git svn' less verbose. Specify a second time to make it
even less verbose.
-m::
--merge::
-s<strategy>::
--strategy=<strategy>::
-p::
--rebase-merges::
These are only used with the 'dcommit' and 'rebase' commands.
+
Passed directly to 'git rebase' when using 'dcommit' if a
'git reset' cannot be used (see 'dcommit').
-n::
--dry-run::
This can be used with the 'dcommit', 'rebase', 'branch' and
'tag' commands.
+
For 'dcommit', print out the series of Git arguments that would show
which diffs would be committed to SVN.
+
For 'rebase', display the local branch associated with the upstream svn
repository associated with the current branch and the URL of svn
repository that will be fetched from.
+
For 'branch' and 'tag', display the urls that will be used for copying when
creating the branch or tag.
--use-log-author::
When retrieving svn commits into Git (as part of 'fetch', 'rebase', or
'dcommit' operations), look for the first `From:` line or `Signed-off-by` trailer
in the log message and use that as the author string.
+
[verse]
config key: svn.useLogAuthor
--add-author-from::
When committing to svn from Git (as part of 'set-tree' or 'dcommit'
operations), if the existing log message doesn't already have a
`From:` or `Signed-off-by` trailer, append a `From:` line based on the
Git commit's author string. If you use this, then `--use-log-author`
will retrieve a valid author string for all commits.
+
[verse]
config key: svn.addAuthorFrom
ADVANCED OPTIONS
----------------
-i<GIT_SVN_ID>::
--id <GIT_SVN_ID>::
This sets GIT_SVN_ID (instead of using the environment). This
allows the user to override the default refname to fetch from
when tracking a single URL. The 'log' and 'dcommit' commands
no longer require this switch as an argument.
-R<remote-name>::
--svn-remote <remote-name>::
Specify the [svn-remote "<remote-name>"] section to use,
this allows SVN multiple repositories to be tracked.
Default: "svn"
--follow-parent::
This option is only relevant if we are tracking branches (using
one of the repository layout options --trunk, --tags,
--branches, --stdlayout). For each tracked branch, try to find
out where its revision was copied from, and set
a suitable parent in the first Git commit for the branch.
This is especially helpful when we're tracking a directory
that has been moved around within the repository. If this
feature is disabled, the branches created by 'git svn' will all
be linear and not share any history, meaning that there will be
no information on where branches were branched off or merged.
However, following long/convoluted histories can take a long
time, so disabling this feature may speed up the cloning
process. This feature is enabled by default, use
--no-follow-parent to disable it.
+
[verse]
config key: svn.followparent
CONFIG FILE-ONLY OPTIONS
------------------------
svn.noMetadata::
svn-remote.<name>.noMetadata::
This gets rid of the 'git-svn-id:' lines at the end of every commit.
+
This option can only be used for one-shot imports as 'git svn'
will not be able to fetch again without metadata. Additionally,
if you lose your '$GIT_DIR/svn/\**/.rev_map.*' files, 'git svn' will not
be able to rebuild them.
+
The 'git svn log' command will not work on repositories using
this, either. Using this conflicts with the 'useSvmProps'
option for (hopefully) obvious reasons.
+
This option is NOT recommended as it makes it difficult to track down
old references to SVN revision numbers in existing documentation, bug
reports, and archives. If you plan to eventually migrate from SVN to
Git and are certain about dropping SVN history, consider
https://github.com/newren/git-filter-repo[git-filter-repo] instead.
filter-repo also allows reformatting of metadata for ease-of-reading
and rewriting authorship info for non-"svn.authorsFile" users.