[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Pkg-haskell-commits] darcs: haskell-dbus: redo experimental changes again



Hi,

Am Sonntag, den 28.10.2012, 10:55 +0100 schrieb Iustin Pop:
> > So there are branches. The next person who wants to work from the
> > unstable status can then obliterate everything up to the last unstable
> > patch to get that state again.
> 
> Asking as I still struggle with darcs concepts: Does this mean we
> actually have two branches in the same repository, like git does? And
> does it follow, if true, that we can get rid of extra repositories for
> e.g. backports or experimental?

somewhat. If you really want separate branches, you need separate
repositories. But due to the set-based logic behind Darcs you can
consider a specific subset of patches (here: Everything that has been
uploaded to unstable) as a light-weight branch. The question is only how
to extract them from a checkout; I usually just "darcs obliterate"
everything that I do not want.

Another downside of this approach is that before you push it, you have
to merge the changes back in. But maybe that is a good thing, it ensures
that the next upload to experimental (or whatever the current “frontier”
distribution is) contains all changes.

Example (getting the state of haskell-unordered-containers in unstable):

$ darcs get darcs.debian.org:/darcs/pkg-haskell/haskell-unordered-containers
Copying patches, to get lazy repository hit ctrl-C...
Finished getting.
$ cd haskell-unordered-containers/
$ darcs obliterate
Sun Oct 21 16:55:23 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  * Change haskell-devscripts dependency back
Shall I obliterate this patch? (1/6)  [ynW...], or ? for more options: y
Sun Oct 21 16:51:41 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  * Merge 0.2.2.1-2~sid
Shall I obliterate this patch? (2/6)  [ynW...], or ? for more options: y
Sun Oct 21 16:50:10 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  tagged 0.2.2.1-2~sid
Shall I obliterate this patch? (3/6)  [ynW...], or ? for more options: n
Will not ask whether to obliterate 2 already decided patches.
Sun Oct 21 16:17:21 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  tagged 0.2.2.1-2
Shall I obliterate this patch? (6/6)  [ynW...], or ? for more options: y
WARNING: Doing a one-time conversion of pristine format.
This may take a while. The new format is backwards-compatible.
Pristine conversion done...
Finished obliterating.
$ darcs obliterate
Sun Oct 21 16:50:10 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  tagged 0.2.2.1-2~sid
Shall I obliterate this patch? (1/5)  [ynW...], or ? for more options: n
Will not ask whether to obliterate 2 already decided patches.
Sun Oct 21 15:52:17 CEST 2012  Joachim Breitner <mail@joachim-breitner.de>
  * Previous upload should have gone to experimental; fixing
Shall I obliterate this patch? (4/5)  [ynW...], or ? for more options: y
Will not ask whether to obliterate 1 already decided patch.
Finished obliterating.
$ head changelog 
haskell-unordered-containers (0.2.2.1-2~sid) unstable; urgency=low

  * Sid-compatible re-upload

 -- Joachim Breitner <nomeata@debian.org>  Sun, 21 Oct 2012 16:47:40 +0200

haskell-unordered-containers (0.2.2.1-1) unstable; urgency=low

  * Depend on haskell-devscripts 0.8.13 to ensure this packages is built
    against experimental
$ 


After obliterating a tag darcs quits, so you might have to run darcs
obliterate again to restart. As long as you say "no" to every tag that
belongs to unstable you will not go beyond that tag, so that it safe.


Greetings,
Joachim
-- 
Joachim "nomeata" Breitner
Debian Developer
  nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
  JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: