Domanda

Il modo più semplice per gestire le installazioni di pacchetti python, finora, per me, è stato quello di estrarre l'origine dal sistema di controllo del codice sorgente e quindi aggiungere un collegamento simbolico nella cartella dist-pacchetti di python.

Chiaramente poiché il controllo del codice sorgente fornisce il controllo completo per il downgrade, l'aggiornamento a qualsiasi ramo, tag, funziona molto bene.

Esiste un modo per utilizzare uno dei programmi di installazione del pacchetto (easy_install o pip o altro), uno può ottenere lo stesso.

easy_install ottiene tar.gz e li installa usando l'installazione setup.py che si installa nella cartella dist-pacchetti in python2.6. C'è un modo per configurarlo o pip per usare invece il sistema di controllo della versione sorgente (SVN / GIT / Hg / Bzr).

È stato utile?

Soluzione

Usare pip è abbastanza facile. Ad esempio:

pip install -e hg+http://bitbucket.org/andrewgodwin/south/#egg=South

Pip clonerà automaticamente il repository di origine ed eseguirà " setup.py sviluppo " per te per installarlo nel tuo ambiente (che si spera sia un virtualenv ). Git, Subversion, Bazaar e Mercurial sono tutti supportati.

Puoi anche eseguire " pip freeze " e produrrà un elenco dei pacchetti attualmente installati con le loro versioni esatte (inclusa, per le installazioni di sviluppo, la revisione esatta dal VCS). Puoi inserirlo direttamente in un file di requisiti ed eseguirlo in seguito

pip install -r requirements.txt

per installare lo stesso set di pacchetti alle stesse identiche versioni.

Altri suggerimenti

Se scarichi o controlli la distribuzione di origine di un pacchetto & # 8212; quello che ha il suo " setup.py " al suo interno & # 8212; quindi se il pacchetto si basa su " setuptools " (che alimenta anche easy_install), puoi spostarti in quella directory e dire:

$ python setup.py develop

e creerà i giusti symlink in dist-pacchetti in modo che i file .py nella distribuzione di origine siano quelli che vengono importati, piuttosto che le copie installate separatamente (che è ciò che "install.py install "" farebbe & # 8212; crea copie separate che non cambiano immediatamente quando modifichi il codice sorgente per provare una modifica).

Come indica l'altra risposta, dovresti provare a leggere " setuptools " documentazione per saperne di più. " setup.py sviluppare " è una funzione davvero utile! Prova a usarlo in combinazione con un virtualenv e puoi " setup.py sviluppare " indolore e senza incasinare Python a livello di sistema con pacchetti su cui stai sviluppando temporaneamente:

http://pypi.python.org/pypi/virtualenv

easy_install supporta il download di versioni specifiche. Ad esempio:

easy_install python-dateutil==1.4.0

Installa v1.4, mentre l'ultima versione 1.4.1 verrebbe scelta se non fosse specificata alcuna versione.

Esiste anche il supporto per i checkout svn, ma l'utilizzo non ti dà molti vantaggi dalla tua versione manuale. Vedere il manuale per ulteriori informazioni sopra.

Essere in grado di passare a rami specifici è raramente utile a meno che non si stiano sviluppando i pacchetti in questione, e quindi in genere non è una buona idea installarli nei pacchetti del sito comunque.

easy_install accetta anche un URL per l'albero dei sorgenti. Funziona almeno quando le fonti sono in Subversion.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top