Creative web design,
Dependable results.

Get a business website you're proud to show off. Contact us today.

FreshBooks

Remote backup, rsync, automatic daily backups
Subversion tools - Beanstalk and Versions
Monday, 21 February 2011 15:05

Beanstalk AppBeanstalk is my latest love. So easy to setup and use, even to a subversion newbie.  Beanstalk allows designers and developers to store source code, track changes, and collaborate with team.  Plus, you can setup multiple deployment environments for each repository to automate the process of deploying changes to your Staging and Production environments. 

In my case, I keep my development environment on my laptop.  I also have setup two branches - staging and production.  The staging branch is setup in Beanstalk to automatically deploy to the Staging server when I perform an svn commit.  The production environment is similarly setup.  I found this article on deployment best practices helpful - http://blog.beanstalkapp.com/post/754555821.

I use Versions, a subversion client for Mac, on my laptop.  I have bookmarks to my Beanstalk repositories and have the project trunk and branches checked out locally.  When I am ready to deploy to Staging, I merge the trunk and staging branch, then commit the changes to staging branch. Here are the steps to merge the changes in the development environment (trunk) to the staging branch:

  1. In the terminal, go to the staging branch directory.
    cd /Users/myuser/Zend/workspaces/DefaultWorkspace7/myproject-branches/staging
  2. Merge changes from the trunk into the staging branch.  E.g.
    svn merge /Users/myuser/Zend/workspaces/DefaultWorkspace7/myproject-trunk
  3. When you are ready to deploy, go back to Versions and commit the staging branch.  The deployment will be added to Beanstalk's deployment queue. You can view the status of the deployment by logging into Beanstalk, going to the repository, and viewing the Deployments tab.
  4. If you get errors from Beanstalk about how a file or folder cannot be created, you may need to update permissions on your server before deployment so that all of the files/directories can be written.  You can switch the permissions back to normal afterwards.
Sign-up with Beanstalk and get 10% off your first month's payment!
 

Add comment


Security code
Refresh