[development] bzr mirror of Drupal HEAD

Karoly Negyesi karoly at negyesi.net
Thu Nov 24 05:05:20 UTC 2005


At http://drupal.revisioncontrol.net/core/head you can find a bzr branch,  
which hourly mirrors from cvs.

Also, as a proof of concept, this site is also a working Drupal install. I  
copied default in site to drupal.revisioncontrol.net and it's working  
nicely. That directory is not revisioned, of course.

You need bzr 0.6 to use this branch, the 0.0.8 in cygwin won't cut it.

Please understand that all this is highly experimental.

You need to run first

bzr get http://drupal.revisioncontrol.net/core/head

in a directory, which will create you a head directory (have patience -- a  
progress bar is coming, for now you need patience). This head directory is  
also known as branch -- in bzr, a branch is just a directory, if you copy  
that directory to some other name, then congratulations, you have  
branched, it's so very easy! Actually, the get commmand above is an alias  
to branch (and so is clone). To update this branch, use:

bzr pull

and that's it. I recommend setting up an hourly cron to do this for you.

If you want to actually hack core, I recommend branching first:

bzr branch head drupal

 from the dir you issued get. Now go to your new drupal directory, hack  
away, and use bzr commit often, whenever you are complete with a step. You  
can have as many branches you want.

When you want to update your own branch to head, then issue from the  
branch you want to update:

bzr merge ../head
bzr commit -m"Synching with HEAD"

You want to roll a patch?

bzr diff ../head

You can, of course do all this against the mirror itself instead of  
../head but it's much faster to use your own local mirror -- and also the  
http://drupal.revisioncontrol.net is running on James Blackwell's donated  
space and bandwidth for which I am thankful, but let's not overuse it  
folks, OK :) ? Later I'd like to move this our own infrastructure.

If you want to work together with someone then you need to make your  
branch public. The first thing is that you need to copy the working tree  
to some webspace and then you can just:

bzr push sftp://somewhere.domain/path/to/my/bzr/branch

Of course, ftp://username:password@ also works. The web space does not  
need to run bzr or anything at all. You are storing static files.

Last tip: bzr help is really helpful.

Have fun!


More information about the development mailing list