[darcs-users] Patch Theory in action

Kevin Smith yarcs at qualitycode.com
Thu Nov 20 15:57:41 UTC 2003


David Roundy wrote:
> On Wed, Nov 19, 2003 at 06:43:46PM -0800, Kevin Smith wrote:
> 
>>There are a couple things I don't understand:
>>
>>1) How did it figure out that the Change patch depended on the Modify
>>patch?
> 
> 
> Do you mean Move patch rather than Modify? I don't see a reference to
> a Modify patch... 

Sorry, yes. The "M" patch...

> The Change patch didn't depend on the Move patch, since
> it commutes with the Move patch.  In darcs terminology a dependency means
> that two patches won't commute.  So the Change patch depends on the add
> patch, but not the Move patch--which means you can't pull the Change patch
> without also pulling the Add patch.

So the pull command effectively evaluates all patches older than the one 
specified to figure out which ones have implied dependencies and which 
ones do not. One simple indication of a dependency relationship between 
two patches is that applying two patches in opposite sequence would 
produce different outcomes.

> First off, I haven't manually specified a dependency in ages.  

Ok. good. That's what I had hoped.

> Another way to get a similar effect to manually specifying dependencies is
> create a tag, which depends on all patches currently in the repo.

Interesting.

Thanks!

Kevin





More information about the darcs-users mailing list