[darcs-devel] [issue463] feature request: sendable checkpoints
Trent Buck
bugs at darcs.net
Sun May 20 23:05:42 PDT 2007
New submission from Trent Buck <trentbuck at gmail.com>:
Currently, darcs push does not transfer checkpoints. Presumably darcs
send does not, either. This is irritating in the following scenario:
- The canonical version of project Snort is on host fs.
- Only the project leader has ssh access to fs. The project
leader is on a four-week holiday.
- I commit patches by darcs sending to snort-commit at fs, where a
procmail script performs the required darcs apply.
In this situation, checkpoints cannot be created (in the canonical
repository).
Transcript follows.
| TEMP> darcs init --repodir=x
| TEMP> darcs init --repodir=y
| TEMP> cd x
| TEMP> touch a b c
| TEMP> darcs rec -lam a a
| Recording changes in "a":
|
| Finished recording patch 'a'
| TEMP> darcs rec -lam b b
| Recording changes in "b":
|
| Finished recording patch 'b'
| TEMP> darcs rec -lam c c
| Recording changes in "c":
|
| Finished recording patch 'c'
| TEMP> darcs tag --checkpoint 1
| Finished tagging patch 'TAG 1'
| TEMP> cd ..
| TEMP> darcs get x
| Directory '/tmp/tmp.iwjPQ19581/x' already exists, creating repository as '/tmp/tmp.iwjPQ19581/x_0'
| Copying patch 4 of 4... done!
| Finished getting.
| TEMP> darcs get --partial x
| Directory '/tmp/tmp.iwjPQ19581/x' already exists, creating repository as '/tmp/tmp.iwjPQ19581/x_1'
| Copying patch 1 of 1... done!
| Finished getting.
| TEMP> darcs push -as --repodir=x ../y
| Will push the following changes:
| Mon May 21 14:22:50 EST 2007 Trent Buck <trentbuck at gmail.com>
| * a
|
| A ./a
|
| Mon May 21 14:22:51 EST 2007 Trent Buck <trentbuck at gmail.com>
| * b
|
| A ./b
|
| Mon May 21 14:22:53 EST 2007 Trent Buck <trentbuck at gmail.com>
| * c
|
| A ./c
|
| Mon May 21 14:23:06 EST 2007 Trent Buck <trentbuck at gmail.com>
| tagged 1
|
| Finished applying...
|
| TEMP> darcs get y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_0'
| Copying patch 4 of 4... done!
| Finished getting.
| TEMP> darcs get --partial y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_1'
| Copying patch 4 of 4... done!
| Applying patch 4 of 4... done.
| Finished getting.
Observe that the checkpoint is not copied. Since this is a local
repository, we can do this:
| TEMP> darcs optimize --repodir=y --checkpoint
| Checkpointing tag:
| Mon May 21 14:23:06 EST 2007 Trent Buck <trentbuck at gmail.com>
| tagged 1
| Done optimizing!
| TEMP> darcs get --partial y
| Directory '/tmp/tmp.iwjPQ19581/y' already exists, creating repository as '/tmp/tmp.iwjPQ19581/y_2'
| Copying patch 1 of 1... done!
| Finished getting.
If we could only communicate with `y' via darcs send, it would be
impossible to create checkpoints in it.
--
Trent Buck
----------
messages: 1702
nosy: EricKow, beschmi, droundy, tommy, trentbuck
status: unread
title: feature request: sendable checkpoints
____________________________________
Darcs issue tracker <bugs at darcs.net>
<http://bugs.darcs.net/issue463>
____________________________________
More information about the darcs-devel
mailing list