ejecutando un git pull desde un directory diferente

Estoy configurando calimoucho (un pequeño server de integración de play play), y para que funcione, necesito ejecutar un command para extraer un repository clonado de git hub desde afuera.

para ser más preciso, lo explicaré con un ejemplo.

Tengo el siguiente repository

cd /home/sas mkdir apps cd apps mkdir myApp cd myApp git init echo "my file" > file git add . git commit -m "initial commit" 

Solo un repository de testings tonto donde se supone que mi aplicación es

Ahora necesito clonar ese repository en una carpeta de pago.

 cd /home/sas mkdir calimoucho cd calimoucho mkdir checkout cd checkout git clone /home/sas/apps/myApp/ 

entonces tengo la siguiente estructura de directory

 ~/apps myapp .git file ~/calimoucho checkout myapp .git file 

El server de continuous integration tendrá que extraer nuevos cambios de ~ / apps / myapp a ~ / calimoucho / checkout / myapp, ejecutando una sentencia de línea de command de ~ / calimoucho

Lo bash con el siguiente command

 ~/calimoucho$ git --git-dir=/home/sas/apps/myApp/.git --work-tree=/home/sas/calimoucho/checkout/myApp/ pull 

y obtengo el siguiente error

 fatal: /usr/lib/git-core/git-pull cannot be used without a working tree. 

si no especifico la opción –work-tree, la extracción se emite, pero los cambios se aplican a la carpeta ~ / calimoucho en lugar de ~ / calimoucho / checkout / myApp

¿Alguna idea de cómo actualizar el repository clonado de la carpeta ~ / calimoucho?

muchas gracias

No debe establecer el tree de trabajo en un repository diferente de la variable git-dir. Creo que están destinados a ser utilizados cuando no quieres que la carpeta .git esté en el mismo directory que tu tree de trabajo. En cambio, intente esto:

 ~/calimoucho/$ git pull --work-tree=checkout/myApp/ ../../apps/myapp