[darcs-users] Centralized Darcs usage

zooko at zooko.com zooko at zooko.com
Fri Apr 21 00:28:15 UTC 2006


> 1) Is it possible to know if a particular file is being "worked on"  
> by somebody else ?

Darcs doesn't do this for you, but of course it doesn't prevent you from
accomplishing this by use of email, wiki, instant messenging, shouting across
the office, and so forth.

You could even use darcs for this kind of communication by putting a note at
the top of the file "I AM SEBASTIEN AND I AM EDITING THIS FILE RIGHT NOW.".
But I would recommend one of the above techniques instead.

> 2) Is it possible to work only on a subset of a repository ? For  
> instance, if I have a large project (hundreds of subdirs, large  
> tree), can I "cherry-pick" a particular subdirectory, make it my  
> working directory and then push my changes back to the "main"  
> repository ?

Yes, but it will work best if you construct your repository in advance.  In
darcs, you can do this:

1.  Make a new, separate darcs repository for each of the projects.

2.  Make a new darcs repository, and pull all of the patches from all of the
separate project repositories.  This is now your "unified all-in-one"
repository.

3.  Patches flow from the separate project repositories into the unified
all-in-one repository, but they do not flow the other way!  (Technically, they
*can* flow the other way, and darcs will actually handle it rather nicely, but
it is a simpler workflow for everyone to understand to Just Not Do That.)

> - 1 "main" repository, that is used by all devs as a reference (this  
> is where the things that will go on production are)
> - N devs who work on projects thats are subdirectories of this main  
> "directory"
> - Each dev has its own local repository in its ~/home
> - Each dev commits to the "main" repo when changes are assumed to be OK

Given that you understand and solve the issues raised above, darcs will serve
nicely for this workflow.

Regards,

Zooko




More information about the darcs-users mailing list