title: SVN and deployment workflow
body: <p>Trying to keep it simple, but with almost no experience in version control, here is what I came up with for version and deployment workflow for a facebook application that is already live:</p>
  
  <p>Development:</p>
  
  <ol>
  <li><p>branch from trunk</p></li>
  <li><p>checkout and setup dev enviroment (automatically create database, netbeans project, facebook app, config file);</p></li>
  </ol>
  
  <p>Staging (same as development branch):</p>
  
  <ol>
  <li><p>run tests (manually); </p></li>
  <li><p>if ok -  svn commit and merge development/staging branch with trunk</p></li>
  <li><p>Post-commit hook to deploy project to live server and update production database if needed.</p></li>
  </ol>
  
  <p>Synchronize different development branches - if one development branch graduated to production, merge it with the other branch(es) still in development.</p>
  
  <p>Are there any blaring mistakes with this workflow? Or any suggestions on how to improve it.</p>
  
  <p>PS: I'm the only developer for now.</p>
  
  <p><a href="http://dl.dropbox.com/u/4327082/temp/myImage.png" rel="nofollow noreferrer">Image to illustrate the above.</a></p>