[Carpet] [Carpet-darcs] Add an example of "manual" scheduling, based on the problem I (and Jonathan) had arose on developers at lists.carpetcode.org as "Carpet scheduling question".

Erik Schnetter schnetter at cct.lsu.edu
Thu Aug 31 23:15:11 CEST 2006


On Aug 31, 2006, at 15:48:00, Luca Baiotti wrote:

>>> By the way, it would be nice if it were possible in darcs to  
>>> unpull in
>>> an easy way all the patches pushed after a given date. This would  
>>> also
>>> make it easier to find which patch broke a particular testsuite.
>>
>>
>> Darcs does not remember the date at which a patch was pushed; it only
>> remembers the date at which a patch was recorded.  This is because
>> repositories can be copied in many ways, and also because of one
>> important property of darcs: the order in which patches are pushed or
>> pulled does not matter at all; the result is always the same.  The
>> patches in a repository are ordered by date-added, but there are some
>> repository actions that reorder patches.
>
> darcs could register independently the time of pushing, just for
> debugging-by-humans purposes, though. It would be convenient, as said.

You probably assume that there is exactly one repository, and darcs  
should record when a patch is pushed to it.  This is not the case.   
There can be many independent repositories, and none is more  
important than the others.

For example, I have two repositories on my notebook, one for the  
original version, and one to play around.  That means that a patch  
has already been pushed twice when you see it on cvs.carpetcode.org.   
Additionally, there is no difference between pushing and pulling  
(except that you give one command in the source, the other in the  
destination repository).  That is, you could also push a patch from  
cvs.carpetcode.org into your local darcs repository instead of  
pulling it.

It is therefore not possible to record the time and date of "the"  
push.  Darcs remembers when a patch was recorded originally, and the  
order in which they arrived in your local repository.  How and when  
the patch travelled in between (push, pull, email, download from a  
web page, etc.) is not recorded.

You can, for all practical purposes, act as if your local repository  
was the most important one, and use the order of the patches in there.

-erik

-- 
Erik Schnetter <schnetter at cct.lsu.edu>

My email is as private as my paper mail.  I therefore support encrypting
and signing email messages.  Get my PGP key from www.keyserver.net.



-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : /archives/developers/attachments/20060831/e9d6f9c1/attachment.pgp 


More information about the developers mailing list