Using git.
Information courtesy of dormando
# Conceptual 'checkout'
git-svn clone http://svn/repo/whatever dir
# to pull and update working dir
git-svn fetch && git-svn rebase
# to shovel your history upstream. turns it into one-patch-per-revision
git-svn dcommit
# protip:
# after doing an initial pull of an svn repo
git repack -a -d && git prune
# it's hella slow and makes one git object per svn revision along the way
# but once the clone finishes and the repack's done it should be fast
# both git log and git-svn log will work after the checkout
# clone
# whatever
# git-svn log mimmicks svn obviously
# you use git
# I don't use it much, but the process is:
commit commit blah blah blah
git-format-patch blah
git-send-email blah
# which'll crap your commits out into a patch series
# or you can stop at git-format-patch and send them yourself