git-svn is a bidirectional bridge between git and Subversion allowing to use a remote Subversion repository as a local Git repository while still be able to send changes back to Subversion.
This function allows a developer to work in git locally while still using a SVN repository as the master revision control system. They can use all features of git locally, and then check their files into a Subversion server when they are ready to commit. Running git locally allows the developer to use the staging area, do branching and merging, rebasing, cherry-picking, etc.
Basic Commands:
This makes a local git copy of the SVN repository:
git svn clone url://path/to/repo -s
Work with the files using the local Git repo. When ready to commit changes to git:
git commit -am 'What I worked on'
To commit back to the master SVN server:
git svn dcommit
If working with other developers and a merge is necessary, git-svn rebase
pulls any changes from SVN to your local git repository.