Categories
SXSW '08

Version Control: No More Save As…

Sunday, 15 March 2009 at 10:00AM
Presenters:

Matt Mullenweg – Automattic/WordPress
Karen Nguyen – Yahoo!
Zach Nies – Rally Software Development
Joe Pezzillo – joepezzillo.com
Derek Scruggs – SurveyGizmo

Gist of this is how version control is becoming more easily integrated into individual and team work. A good understanding and trust of version control gives one the courage to be ambitious with […]

Sunday, 15 March 2009 at 10:00AM
Presenters:

Gist of this is how version control is becoming more easily integrated into individual and team work. A good understanding and trust of version control gives one the courage to be ambitious with confidence.

They proceed to do some introductory stuff:  update, status and commit.

Time Machine != source control. Me: it does, however, handle simply 80% of the problems an individual designer may encounter.

Xcode has a very cool FileMerge UI that kicks ass on diff.

Cornerstone (http://www.zennaware.com/cornerstone/)

Versions (http://www.versionsapp.com/)

Beanstalk - free hosted SVN

Git

Mercurial (Hg)
Put binaries in the repos. Guarantees exact same compiled file on rollback. Easily deploy multiple versions of the file.
Cross-repository development:  using differing version control systems. Currently, there is not a simple solution to this. It is best to use the same one.
Switching:  ease of use, security (is it easy to backup?), cost effective, reporting!, the community
Matt Mullenweg, as an example, is now making a live commit to wordpress.com typing “Matt waz here”. They are running 300-400 servers.
matt-deploy
They use trac which has looked cool and I should figure it out. Matt committed, as a test, 510 GB of photos. He puts all his personal files into Subversion. Caveat:  Subversion is not a backup.
There are many hosted version control providers that offer very fast setup and handle all the server-side crap.
Matt complaints vs. branching:  People marching down different branches slowed development. It is good for a giant rewrite, but when headed toward a common goal (bug fixes) it slows development.
Caching problem with rollbacks or deploys:  rollbacks are more of a problem with agressive caching because of the timestamp differential.
Very cool:  http://codex.wordpress.org/Installing/Updating_WordPress_with_Subversion
Matt has placed an Easter egg in WP. To do so, he had to hack Subversion so it halted the email lists, etc. I am sure hundreds of people will be poring over the code for this now.
Most web servers do not automatically protect svn directories so do this manually.