google-code-export / django-hotclub

Automatically exported from code.google.com/p/django-hotclub
MIT License
0 stars 0 forks source link

Mercurial script to keep track of Pinax and external dependencies #32

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
The hgsvn tool can be used to clone the Subversion repository into a
Mercurial one. Alas, it does not keep track of the external applications.

There is a simple script attached to issue 17 to do that, but it has a few
limitations: it will clone all revisions of Pinax and all external apps; it
must be modified to only pull in subsequent executions, after the first
import; and it has no workaround for some weirdness in Google Code
Subversion deployment.

An expanded rewrite in Python is attached. It includes documentation,
command line options, the mentioned workarounds, and extensive error checking.

If run without arguments it will come straight here and get all of Pinax. :-)

Original issue reported on code.google.com by nicola.l...@gmail.com on 21 Jul 2008 at 2:38

Attachments:

GoogleCodeExporter commented 9 years ago
Version 0.2 is new and improved, use that instead.

Original comment by nicola.l...@gmail.com on 24 Jul 2008 at 6:28

Attachments:

GoogleCodeExporter commented 9 years ago
After the recent dir reorg (that attached the svn:external properties to the 
apps dir
instead of the pinax one), two commands are needed:

$ hgimpull -u http://django-hotclub.googlecode.com/svn/trunk/pinax pinax
$ hgimpull -u http://django-hotclub.googlecode.com/svn/trunk/apps apps

and then two commands to update:

$ hgimpull pinax; hgimpull apps

Original comment by nicola.l...@gmail.com on 28 Jul 2008 at 2:16

GoogleCodeExporter commented 9 years ago
Another revision, 0.3, with some news.

The command is now called hgsvnimpull, so that it autocompletes just by typing 
"hgs"
and then Tab (thanks to insanekane for the name).

Furthermore, it does not create symlinks anymore, but instead places all 
external
apps in a second directory, given as second command line arg. (It's better not
putting them inside the "apps" directory, because then we would nest mixed 
hg/svn
repositories inside each other.)

The needed commands are now:

$ hgsvnimpull -u http://django-hotclub.googlecode.com/svn/trunk/pinax pinax
$ hgsvnimpull -u http://django-hotclub.googlecode.com/svn/trunk/apps  apps  
ext-apps

and to update:

$ hgsvnimpull pinax
$ hgsvnimpull apps  ext-apps

(In both places, the first commands, the pinax ones, may be substituted with 
direct
invocations of hgimportsvn and hgpullsvn: your choice.)

Original comment by nicola.l...@gmail.com on 30 Jul 2008 at 4:49

Attachments:

GoogleCodeExporter commented 9 years ago
2008 Dec 18: 
The repository has moved.  Not sure if still need to do two checkouts as in 
above comment
# used mercurial-1.1 and hgsvn 0.1.6
# installed with $ easy_install -UZ mercurial hgsvn

$ mkdir pinax.hg; cd pinax.hg 

$ hgsvnimpull-0.3.py -u http://svn.pinaxproject.com/pinax/trunk pinax
$ hgsvnimpull-0.3.py -u 
http://svn.pinaxproject.com/pinax/trunk/apps/external_apps
external_apps external_apps

Plan to use symbolic links to insert the external apps into the regular 
directory

Original comment by chris.le...@gmail.com on 18 Dec 2008 at 6:22

GoogleCodeExporter commented 9 years ago
If someone wants to put together a wiki page I would be more than happy to add 
it. I think we can ultimately add 
this type of stuff to the documentation.

Original comment by bros...@gmail.com on 18 Dec 2008 at 6:37

GoogleCodeExporter commented 9 years ago
hg support now should work much better now. Since we have moved away from 
svn:externals, any DVCS will 
work equally well.

Original comment by bros...@gmail.com on 5 Feb 2009 at 3:33

GoogleCodeExporter commented 9 years ago
Right, this thing's not needed anymore. It's been fun in the meanwhile, though. 
:-)

Original comment by nicola.l...@gmail.com on 5 Feb 2009 at 5:36