You can create a replacement ref for the initial commit from git to make it
appear to most git commands that the history which originated in git was built
upon history imported from svn.
With recent versions of git that can be done using the command:
git replace --graft <FIRST_GIT_COMMIT> <LATEST_SVN_COMMIT>
For older version which don't support that, you can do the same with the following commands:
git checkout -b temporary <FIRST_GIT_COMMIT>
# Set parent of next commit to last one from svn,
# but don't change the working tree or contents of next commit
git reset --soft <LATEST_SVN_COMMIT>
# Create a new commit using contents and message of the first git commit
git commit -C <FIRST_GIT_COMMIT>
# Tell git to use the newly created commit in place of the original git
# commit in most cases.
git replace <FIRST_GIT_COMMIT> HEAD
But, in either case, replacement references do not get transferred automatically with the
standard refspecs used for remotes either when pushing or pulling. Than can be
done manually by using:
git push origin 'refs/replace/*:refs/replace/*'
git pull origin 'refs/replace/*:refs/replace/*'
It is not possible to have the altered history automatically transferred to
other repositories without changing the commit ID of every commit which was
originally created with git.