{"id":386,"date":"2005-03-29T11:26:58","date_gmt":"2005-03-29T01:26:58","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/?p=386"},"modified":"2010-06-01T15:57:38","modified_gmt":"2010-06-01T05:57:38","slug":"revision-control","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2005\/03\/29\/revision-control\/","title":{"rendered":"revision control"},"content":{"rendered":"<p><a href=\"http:\/\/krow.net\">Brian Aker<\/a> has blogged about <a href=\"http:\/\/www.livejournal.com\/users\/krow\/336023.html\">BitKeeper versus CVS<\/a><\/p>\n<p>no doubt this has stemmed from somebody&#8217;s rant on the BK license. Now, this is a valid rant, but, really &#8211; it&#8217;s getting[1] old.<\/p>\n<p>Personally, I quite like the <a href=\"http:\/\/www.gnu.org\/software\/gnu-arch\/\">GNU Arch Revision control system<\/a>. Unfortunately, the UI is sort of sucky and takes a bit of getting used to. <a href=\"http:\/\/bazaar.canonical.com\/en\/\">Bazaar<\/a> is one to watch for improvements on this front (although I haven&#8217;t made the switch, mainly due to there not being enough hours in the day).<\/p>\n<p>One thing that Arch does <b>really<\/b> well is cherry picking changesets. A simple &#8216;tla reply&#8217; will do the equivilent of &#8216;patch -p1 &lt; foobar&#8217;, but preserving where it came from. BRILLIANT. I wish bk did this. I once looked at branching in CVS and quickly ran away.<\/p>\n<p>A smaller player, Darcs is one to take a close look at too. The UI is really sweet. I&#8217;ve only used it to test\/submit fixes upstream on a small project (namely <a href=\"http:\/\/research.operationaldynamics.com\/\">xseq<\/a> &#8211; a project that is way cooler than the name suggests[2].)<\/p>\n<p>In the future, <a href=\"http:\/\/bazaar.canonical.com\/en\/\">bazaar-ng<\/a> (back online soon) will probably be the way to go. Now is the time to bombard it with ideas though :)<\/p>\n<p>At least we&#8217;re not stuck with Visual Source Safe. Full on MS people bag that pile of poo.<\/p>\n<p>[1] Many would, in fact, believe i should be leaving out the word &#8216;getting&#8217;.<br \/>\n[2] I&#8217;m sure Andrew would be appreciative of funky names as well. <\/p>\n<p>Update: why, oh why does this edit post thing think it must fight against the will of the correct closing tags?<\/p>\n<p>Update 2: it seems that wordpress doesn&#8217;t want to save an update if you&#8217;re only fixing your markup. you have to add text. the suck.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Brian Aker has blogged about BitKeeper versus CVS no doubt this has stemmed from somebody&#8217;s rant on the BK license. Now, this is a valid rant, but, really &#8211; it&#8217;s getting[1] old. Personally, I quite like the GNU Arch Revision &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2005\/03\/29\/revision-control\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[1,2,14,7],"tags":[],"class_list":["post-386","post","type-post","status-publish","format-standard","hentry","category-general","category-life-the-universe-and-everything","category-mysql","category-work-et-al"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-6e","jetpack-related-posts":[{"id":793,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/02\/14\/svn-shows-its-true-colours\/","url_meta":{"origin":386,"position":0},"title":"SVN shows its&#8217; true colours","author":"Stewart Smith","date":"2007-02-14","format":false,"excerpt":"I thought \"svn\", I typed \"cvs\". Hrrm... sounds about right. In other revision control news, using quilt to manage work-in-progress patches in conjunction with BK is proving really, really great. I feel like an idiot having lived this long and not worked this way. I have a feeling that if\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1016,"url":"https:\/\/www.flamingspork.com\/blog\/2008\/02\/22\/bzr-loom-a-bzr-plugin-with-quilt-like-functionality\/","url_meta":{"origin":386,"position":1},"title":"bzr-loom &#8211; a bzr plugin with quilt like functionality","author":"Stewart Smith","date":"2008-02-22","format":false,"excerpt":"A bzr plugin to assist in developing focused patches. in Launchpad I use quilt a lot for development. Currently, If I had to choose between BK and quilt - I'd choose quilt. I use bzr in other development projects like MemberDB. I use git as a frontend for SVN (it\u2026","rel":"","context":"In &quot;MemberDB&quot;","block_context":{"text":"MemberDB","link":"https:\/\/www.flamingspork.com\/blog\/category\/memberdb\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":266,"url":"https:\/\/www.flamingspork.com\/blog\/2004\/09\/05\/more-linux-australia-website-stuff\/","url_meta":{"origin":386,"position":2},"title":"More Linux Australia website stuff","author":"Stewart Smith","date":"2004-09-05","format":false,"excerpt":"well, we've gotten everything into arch, and Pia and I have both committed to the central archive on digital fine. We're getting places! this is *good*! I think we're nearly ready to go live. Just have to set up the news feeds for our \"latest news\" stuff. so, some mysql\u2026","rel":"","context":"In &quot;General&quot;","block_context":{"text":"General","link":"https:\/\/www.flamingspork.com\/blog\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":590,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/02\/20\/bzr-the-website-dude\/","url_meta":{"origin":386,"position":3},"title":"bzr the website dude","author":"Stewart Smith","date":"2006-02-20","format":false,"excerpt":"I'm currently in the process of trying out Tailor to convert the CVS repository that stores the revision history of my website to bzr. I've been meaning to try bzr again for ages, and here's the excuse. I'm going to see if this is going to work well for me.\u2026","rel":"","context":"In &quot;website&quot;","block_context":{"text":"website","link":"https:\/\/www.flamingspork.com\/blog\/category\/website\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":338,"url":"https:\/\/www.flamingspork.com\/blog\/2005\/01\/14\/rt2500-wireless-pci-card-on-ubuntu\/","url_meta":{"origin":386,"position":4},"title":"RT2500 wireless PCI card on Ubuntu","author":"Stewart Smith","date":"2005-01-14","format":false,"excerpt":"Got the two cards today. Ordered from i-Tech (mob in Sydney, had it delivered here). Were $59AUD each (plus shipping, which was $15 for the two of them). Really painless setup! One was for the Ubuntu system my mum uses, the other for the Windows system my brother uses. Well,\u2026","rel":"","context":"In &quot;cool gadgets&quot;","block_context":{"text":"cool gadgets","link":"https:\/\/www.flamingspork.com\/blog\/category\/cool-gadgets\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":120,"url":"https:\/\/www.flamingspork.com\/blog\/2003\/06\/25\/updates\/","url_meta":{"origin":386,"position":5},"title":"updates","author":"Stewart Smith","date":"2003-06-25","format":false,"excerpt":"Updated my linux page, about to add some updated docs to my honors page and have added two more patches to my stew's patches directory. I love rsync and CVS. sure, cvs has limitations, but it doesn't cost anything and does 95+% of what I want.","rel":"","context":"In &quot;website&quot;","block_context":{"text":"website","link":"https:\/\/www.flamingspork.com\/blog\/category\/website\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=386"}],"version-history":[{"count":3,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/386\/revisions"}],"predecessor-version":[{"id":2010,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/386\/revisions\/2010"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}