On 2005-08-01, Jack Baty <[EMAIL PROTECTED]> wrote: > We use Darcs for managing web app development and I'd like some advice > on deployment and repository workflow. > > Currently, I have an /alpha web site configured and we push directly > to it from local working copies. I then pull locally on the server > from the /alpha to /beta, then pull locally (also on the server) from > /beta to /live. I also push to a separate repository on our "SCM" > machine for use with darcsweb.cgi and other tools.
This sounds a lot like what I've done: http://mark.stosberg.com/Tech/darcs/cvs_switch/ Although I don't think I have an equivalent to your "scm" machine. I use the alphasite also as the "central server". > There are some cases where minor changes are recorded directly on the > /alpha site and I've run into the occasional conflict while > subsequently pushing to /alpha. Is conflict resolution generally > easier during pull operations, and if so would I be better off always > pushing to the SCM box and then _pulling_ to /alpha first instead? Yes, I would recommend pulling, resolving conficts and then pushing. If you have a conflict with another developer, pushing to the SCM box first won't help. In this case, both the scm box and the alpha repo act as a central server for you. The reason to pull first is to resolve the conflict locally. If you push and there is a conflict, it will either refuse to apply it, or you will create a conflict on a central server to resolve, which means you need to work on directly on the central repo (which should be avoideded). Also, someone else could pull the conflict in the central repo before you resolve it, making things worse. I recall that CVS worked in a similiar fashion: It would mark conflicts locally, and the resolution could be committed, avoiding conflicts in the central server. Mark -- http://mark.stosberg.com/ _______________________________________________ darcs-users mailing list [email protected] http://www.abridgegame.org/mailman/listinfo/darcs-users
