2009-11-14 40 views
8

Estoy intentando usar un programa que use git como la tienda de respaldo (soy nuevo en git). Durante el inicio, este programa hace un:"No es un repositorio git"

"git" "--bare" "rev-parse" "refs/heads/index" 

que se traduce en:

fatal: Not a git repository: '/home/david/blog.git'

que siguieron this tutorial, git init, git add test.txt y git commit. La cesión temporal parece comportarse correctamente cuando (en el directorio correcto) que hacer (por ejemplo):

$ git status 

Lo que está haciendo rev-parse y ¿qué tengo que hacer para que mi repo para hacer que funcione?

Respuesta

7

Si git status está trabajando, entonces debe estar en un repositorio no vacío con un árbol de trabajo. git status requiere un árbol de trabajo.

Si el programa está ejecutando git --bare ..., entonces espera que el directorio dado sea un repositorio de git simple, es decir, con un directorio que no funcione.

La convención de nomenclatura de reponame.git es generalmente reservado para repositores desnudas y repositorios no desnudos suelen utilizar un nombre de directorio de reponame y contener un subdirectorio .git.

Si /home/david/blog.git es en realidad un repositorio no desnudo, entonces tendrá un subdirectorio .git. Si este es el caso, probablemente pueda apuntar el programa al /home/david/blog.git/.git, pero no puedo evitar la sensación de que sería más seguro señalarlo en un repositorio realmente vacío. ¿Qué programa es y cuáles fueron las instrucciones para inicializar su almacén de datos? `

+0

Gracias - eso ha aclarado mucho las cosas. Ahora, ¿cómo hago 'refs/heads/index'? (Solo puedo ver 'master' en el directorio' refs/heads'). El programa es "tekuti" (http://wingolog.org/software/tekuti/) y recomienda migrar la tienda de wordpress (que no he usado, por lo que no tengo). – user147714

+0

¿Estás seguro de que * necesitas * para crear una rama llamada 'index'? ¿Podría tekuti verificar si la rama existe para que pueda hacerlo con su propio contenido? (Si necesita hacerlo 'git branch index' debería funcionar.) –

+0

Spot on! (Quizás el camino más fácil es usar Wordpress después de todo ...) – user147714

6

Tal vez "git init" es todo lo que necesita hacer.

+0

Pruebe 'git init --bare' en su lugar. Como señala la otra respuesta, lo que necesita es solo el directorio '.git' y no un directorio de trabajo para ir con él. –

+0

Gracias - Edité la pregunta para que sea evidente que hice eso. – user147714

Cuestiones relacionadas