[Buildbot-devel] Question from Marcus

Marcus Lindblom macke at yar.nu
Mon Mar 23 20:37:41 UTC 2009


(cc:ing back to list for everyone)

Brian Warner wrote:
>>>> Sun, Mar 22, 2009 at 4:50 PM, Marcus Lindblom <macke at yar.nu> wrote:
>>>>     
>>>>         
>>>>> What is the rationale for clobbering on branch change? Is it legacy due
>>>>> to CVS?
>>>>>       
>>>>>           
>>>> Brian, this question is from before my time, but perhaps you recall
>>>> the reason?  I would hate to see the project repeat a previous
>>>> mistake, or undo a solid design decision.
>>>>
>>>> Dustin
>>>>         
>
> Yeah, it was CVS not handling branch changes very well. I think the
> individual Source commands (on the slave side) should get to decide what to
> do about branch switches (the slave side keeps track of which branch was
> recently checked out, maybe in a file named .buildbot-branch or
> .buildbot-verinfo or something?, so it can detect checkout/updates which are
> really branch switches). CVS can do a clobber first, more capable systems
> like Git and SVN can do something faster.
>
> The biggest issue in CVS was that anything which caused a file to be replaced
> with a directory, or vice versa, would cause the CVS command to fail. There
> is some code in the slave side to detect VC failure and fall back to doing a
> full clobber to handle this sort of problem. I think the secondary issue was
> that switching branches in CVS didn't always delete the files that weren't
> present in the new branch, but it's been an awfully long time since I used
> CVS for anything, so I can't be sure.
>
> hope that helps,
>  -Brian
>   
Ok. Makes sense, and good to know that we're on track.

So it seems kosher to have Mercurial not clobber but do it's own version 
of cleanup by default, and allow the user to disable clobbering 
completely if he or she so desires. Extending this to other vcs:es seems 
like a good idea.

I'm working on pushing Quentin's work to Dustin's repo right now. 
(&%¤#"@£$EUR git! ;-P .. I just need to clean up my own mess...)

Cheers
/Marcus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20090323/5f90788b/attachment.html>


More information about the devel mailing list