Put git-svn-ext in your path and run it from the top-level tree checked out with git-svn. git-svn-ext will detect and git-svn clone the externals using the following method:
- git svn clone each external into a
.git_externals/
directory. - symlink the cloned repository in
.git_externals/
to the proper directory name. - add the symlink and
.git_externals/
to the.git/info/excludes/
file, so that you're not pestered about it when performing a git status.
Usage: ./git-svn-ext <sub command> [sub command args]
Sub commmands:
clone
clone all svn externals into .git_externalsupdate
updates all svn externals (git svn fetch[ --revision]/rebase --local)check
check if local git-svn checkout has unpushed commits and uncommitted changesexecute
run a command against all externals (ie:git svn-ext execute 'git grep "whatever"'
)
Note: externals may be ignored if listed in .git_external_excludes
This script is based on git-svn-ext / git-svn-clone-externals from the following repositories: