2012-03-16 20 views
8

Tengo un repositorio normal donde hay un árbol de trabajo y una carpeta .git en el mismo directorio que el árbol de trabajo.¿Cómo uso la opción --work-tree con git? Sigo recibiendo un error

estoy tratando de ejecutar un comando git desde fuera este lugar con el comando

git --git-dir=/path/to/repo/.git --work-tree=/path/to/repo pull /some/other/repo master 

pero sigo obteniendo el error fatal: /usr/libexec/git-core/git-pull cannot be used without a working tree..

¿Qué estoy haciendo mal?

+0

¿Cuál es su directorio de trabajo actual? ¿Qué versión de Git estás usando? –

+0

Es como esto: todos los archivos (el árbol de trabajo) están dentro de una carpeta como '/ some/repo' y dentro de esta carpeta también hay una carpeta .git'/some/repo/.git'. Normalmente, ejecutaría comandos de git desde adentro de '/ some/repo'. Tengo la versión '1.7.2.3'. – trusktr

Respuesta

9

Esto es un error en las versiones anteriores de Git. Este problema debería desaparecer una vez que actualice a 1.7.7.2 o posterior.

De the commit that fixed the bug:

You can't currently run git-pull or git-rebase from outside 
of the work tree, even with GIT_WORK_TREE set, due to an 
overeager require_work_tree function. Commit e2eb527 
documents this problem and provides the infrastructure for a 
fix, but left it to later commits to audit and update 
individual scripts. 

Ver también commit e2eb527.

Cuestiones relacionadas