Changes between Version 2 and Version 3 of Keeping the Tree Green

Apr 3, 2010 10:35:07 AM (10 years ago)



  • Keeping the Tree Green

    v2 v3  
    1515A: We've add the IRC nicks for most members of the project to  Please take a minute to verify that your nick is correct or add your nick if it's missing.  Adding your nick to doesn't require review.
    17 == Responding to Failures ==
     17== Responding to failures ==
    1919Generally, there are two approaches to responding to failures: (1) attempt to fix the failure live on the tree, or (2) roll out the offending change.  Historically, the WebKit project has favored fixing live because, I think, rolling changes in and out of the tree was cumbersome.  The tradeoff between these approaches is that fixing live imposes the cost of a broken tree on every member of the project whereas rollouts imposes a cost on the committer of the patch.  As the number of people involved in the project grows, the cost of a broken tree scales while cost of rollout remains fixed.  At some point, attempting to fix the tree live is more costly to the project than rolling out the patch.
    2121If you cause a failure, please consider rolling out your patch instead of trying to fix the failure live.  There's no shame in rolling out your patch, and you can always land it again once you've tracked down the failure.  Often re-landing your change doesn't require an additional review.  Of course, rolling out a patch isn't appropriate for all situations.  The next time you find yourself trying to fix a failure live on the tree, ask yourself whether you're selfishly imposing costs on other members of the project.
    23 == Using Sheriffbot to Roll Out a Patch ==
     23== Using sheriffbot to roll out a patch ==
    2525Sheriffbot can help you roll out a patch.  Here's how it works.  Suppose revision 57047 broke Tiger.  You can send sheriffbot the following command in #webkit: