[darcs-users] keeping unusable stuff around

Albert Reiner areiner at tph.tuwien.ac.at
Wed Oct 26 15:25:26 UTC 2005


Hi,

how would you handle the following situation?

I have been working on two branches, C1 and C2, of some Code
(corresponding to different types of liquids for which to compute
phase diagrams), with patches regularly being exchanged between the
two branches.  There is a third repo, D, only conceptually related to
the other two, where I gather Documentation, notes, logs etc. -
everything that is not part of the source proper.

Now I have spent (far too much!) time modifying C1 so as to
investigate the effects of some change to the underlying theory, and
this has turned out not to be usable.  It has resulted in numerous
changes all over C1, and now I want to go back to the old code without
permanently loosing all the modifications I made.

I can see two ways of handling this:

- Record and rollback.  This way the useless code is in the repo and I
  can go back to it later.  But will this negatively affect patch
  commutation?  The changes are all over the place, so there might
  easily arise additional conflicts when patches are commuted past the
  patch and its inverse.  Or is darcs smart enough to know that a
  sequence of patch and its inverse are just an identity operation?

- Tag the old version of C1, record the changes, use |send| to make a
  patchbundle that is then simply stored in the D branch, and unrecord
  the changes in C1.  This seems nicer to me, but I am not sure it is
  a good idea.  In particular, is the patchbundle produced by `darcs
  send` suitable for storing random patches in the long run, or is it
  liable to change?

Or is there a better way of doing this?

Thanks in advance for any comments,

Albert.




More information about the darcs-users mailing list