Having worked a bit with Ruby on Rails, I've come to appreciate the Capistrano deploy method. Since I also work in PHP and deploy to Linux I recently wrote a bash script to export from SVN to a timestamp named directory with a symbolic link for the webroot.
This allows for very quick code rollbacks by changing the symlink to point to the last working version if a deployment goes wrong. The script allows checking out from trunk or specifying a branch, tag or revision number.
Usage:
#./svndeploy
#./svndeploy -b [branchname]
#./svndeploy -t [tagname]
#./svndeploy -r [revision number]
The script should live in the directory below the webroot (ie the same directory as the Apache docroot for the specific site).
Download it here
Update: Now with an rsync command to synchronized with the previous release in case there were any assets not under SVN control.
Tags
motorcycle (8) cars (4) work (11) web development (7) porsche (2) life (26) holidays (1) new year (1) photography (3) travel (3) london (1) ubuntu (12) linux (21) birthday (2) weather (1) bow island (2) parenthood (1) qos (1) firewall (1) css (3) fire (1) diy (3) laptop (2) chart (1) test (2) cooling (1) politics (2) harper (1) media (1) modx (1) development (18) pie (1) microsoft (3) sharepoint (1) wine (1) video editor (1) canada (1) abby (1) wii (1) parenting (3) shoelaces (1) christmas (1) pictures (2) unix (1) time (1) google (2) picasa (1) windows (2) joel (1) twitter (1) technology (1) deadline (1) triumph (3) tiger (1) holiday (1) apache (1) mysql (10) tip (1) mechanics (1) server (1) smartphone (1) android (7) vm (1) ted (1) music (1) sql (1) postgres (1) svn (1) vmware (1) house (2) camping (1) replication (2) mechanic (1) oracle (2) databases (1) debian (1) sqlserver (1) sql server (1) datapump (1) blog (1) C# (1) MVC (1)