title: Best way to fork SVN project with Git
body: <p>I have forked an SVN project using Git because I needed to add features that they didn't want.  But at the same time, I wanted to be able to continue pulling in features or fixes that they added to the upstream version down into my fork (where they don't conflict).  So, I have my Git project with the following branches:</p>
  
  <ul>
  <li>master - the branch I actually build and deploy from </li>
  <li>feature_*** - feature branches where I work or have worked on new things, which I then merge to master when complete</li>
  <li>vendor-svn - my local-only git-svn branch that allows me to "git svn rebase" from their svn repo</li>
  <li>vendor - my local branch that i merge vendor-svn into.  then i push this (vendor) branch to the public git repo (github)</li>
  </ul>
  
  <p>So, my flow is something like this:</p>
  
  <pre><code>git checkout vendor-svn
  git svn rebase
  git checkout vendor
  git merge vendor-svn
  git push origin vendor
  </code></pre>
  
  <p>Now, the question comes here:  I need to review each commit that they made (preferably individually since at this point I'm about twenty commits behind them) <em>before</em> merging them into master.  I know that I could run <em>git checkout master; git merge vendor</em>, but this would pull in all changes and commit them, without me being able to see if they conflict with what I need.</p>
  
  <p>So, what's the best way to do this?  Git seems like a great tool for handling forks of projects since you can pull and push from multiple repos - I'm just not experienced with it enough to know the best way of doing this.</p>
  
  <p>Here's the original SVN project I'm talking about: <a href="https://appkonference.svn.sourceforge.net/svnroot/appkonference" rel="noreferrer">https://appkonference.svn.sourceforge.net/svnroot/appkonference</a> </p>
  
  <p>My fork is at <a href="http://github.com/jthomerson/AsteriskAudioKonf" rel="noreferrer">github.com/jthomerson/AsteriskAudioKonf</a></p>