2012-02-18 11 views
16

En un proyecto python (django), cuando cambio la ubicación de una dependencia existente con pip, y reinstalo el archivo updated.txt actualizado en otra máquina, me piden un mensaje de esta manera: -instalación de pip con la opción borrar de forma predeterminada

Obtaining South from git+git://github.com/lambdafu/[email protected]#egg=South-dev (from -r requirements.txt (line 5)) 
    git clone in ./src/south exists with URL git://github.com/clones/django-south.git 
    The plan is to install the git repository git://github.com/lambdafu/django-south.git 
What to do? (s)witch, (i)gnore, (w)ipe, (b)ackup 

en este punto, voy a seleccionar "w" (limpiar) para acabar con la vieja copia de django-sur y sur-utilizar Django de la nueva ubicación del repositorio.

Me gustaría hacer esto como un comportamiento predeterminado sin necesidad de escribir "w".

¿Existe una opción que puede especificar la hora de dar mi mando

pip install -r requirements.txt 

de manera que el proceso de instalación sabrá automáticamente que quiero acabar con la copia más vieja y no pedirá mí elegir s/i/¿w/b?

Respuesta

13

usted podría utilizar el comando yes:

yes w | pip install -r requirements.txt 
+0

parece funcionar bien. ¡Gracias! –

+1

En serio !!!!! * nix me sigue sorprendiendo con todas estas herramientas rudimentarias ... – RickyA

27

De PIP versión 1.1 en adelante también se puede utilizar:

--exists-action = EXISTS_ACTION acción por defecto cuando un camino ya esta exists.Use opción más de una vez para especificar otra acción si una determinada opción no está disponible, opciones: (s) bruja, (i) gnore, (w) ipe, (b) ackup

+0

¡Buen consejo! ¡Gracias! –

Cuestiones relacionadas