# [darcs-users] RE: Real-world darcs scenario (was: Win32 build of darcs again)

libogen . libogen at hotmail.com
Thu Mar 25 17:36:47 UTC 2004

Kevin Smith <yarcs at qualitycode.com> wrote:

>libogen . wrote:
>>i. At a certain point in the development of a webpage (which belongs to
>>a repository) there may be two different approaches to complete a
>>certain task eg. XSL transform a set of XML files.
>>ii. Dev continues based on approach A until the task is complete.
>>iii. Curious as to whether approach B would be better, I checkout the
>>revision of the webpage which existed at stage i.
>
>Here, you are creating a branch. With darcs, this probably means
>creating a second repository. Most likely, you would use "get" to pull
>based on a tag in the original repo.

Agreed

>Contrast that with CVS, where you would be adding a new branch to the
>single, centralized repo.

Yep, my layman's understanding also.

>>iv. Dev continues using approach B in parallel until the task is complete.
>>v. The completed webpages based on both approaches are compared and the
>>one based on approach B is selected.
>>vi. The redundant approach A's revisions are removed from the repository
>>leaving a complete history of the revisions to the webpage based only on
>>approach B.
>
>With darcs, the A code was never in the B repo, and vice versa. So the B
>repo becomes the official repo, the entire A repo is deleted, and it is
>as if A never happened.

That means that when the newer B repo was created using 'get' and specifying
the time/date (or tag if one exists) of the state of the A repo at stage i.,
also all of the changes leading up to stage i. would have been copied across
(but not any changes after stage i. i.e. 'A approach' changes)?

>>I'm also keen to locate both system's repositories at my webhost and
>>access them using ssh but my current hosting plan doesn't include shell
>>access so I'll have to put in a request and cross fingers!

My webhost granted me shell access for free (great service!) and I'm now
setting up public key authentication to transparently use SSH when accessing
remote repos on my hosting space (using PuTTY's plink & pageant apps). Some
sshd_config settings may need changing so I'm waiting on a reply from my
webhost at the mo.

I've been trawling through past postings to the darcs-users' mailing list
(as well as reading the docs) to get a better idea of working with remote
repos and the current limitations of using darcs on Windows.

In case I can't apply changes to remote repos, I could work on a local repo
on my PC and rsync over SSH to my hosting space's remote repo and then pull
it down to a local repo on my notebook. I'd then rsync-over-SSH again after
working on my notebook. As the repo is only used by me I think this is ok.

Actually there's a more basic problem. I mightn't be able to use any darcs
command that uses SSH as I think that darcs relies on an external SSH
client. To be more precise, the OpenSSH client used by Posix based
platforms(?) To this end I think that it would be helpful to, as David wrote
at the end of this mailing list posting (
http://www.abridgegame.org/pipermail/darcs-users/2003/000175.html ), "bite
the bullet and set up support for a ~/.darcs configuration file" to support
external commands.

In this way for example, I could add to the configuration file, the correct
command line parameters to issue to PuTTY's plink.exe command line SSH
client (which has recently been ported to Unix).

CVS uses a different method i.e. setting a Windows environment variable as

darcs' current SSH client support coding could remain largely intact (to
keep existing users happy?) with the addition of either a new optional
parameter to the push & pull commands (to select an alternative SSH client),
or automatically using an alternative SSH client if one is specified in the
new config file.

A side effect is that users could contribute configuration settings for
various external programs on different platforms.

That's enough waffling from me :)

Cheers,
Kieran

_________________________________________________________________
Add photos to your e-mail with MSN 8. Get 2 months FREE*.
http://join.msn.com/?page=features/featuredemail