Para simplificar y combinar la información en las respuestas:
Hay tres diferencias que hacen que un repositorio simple sea diferente de una carpeta .git normal:
- core.bare se establece en verdadero en el archivo de configuración
- el archivo de índice y el árbol de trabajo no existen
- no se genera una especificación de referencia predeterminada para el control remoto "origen"
Entonces, simplemente puede mover su repositorio básico para que sea la subcarpeta .git de una nueva carpeta,
mkdir clone
mv bare.git clone/.git
Cambiar core.bare:
cd clone
git config --local --bool core.bare false
Agregue una especificación de referencia de origen predeterminada para realizar git fetchy git pushelegir los mismos valores predeterminados que de costumbre:
git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'
Y genere el archivo de índice y el árbol de trabajo:
git checkout master
Recomiendo en git checkoutlugar de git resetgenerar los archivos, en caso de que se ingrese accidentalmente en el lugar equivocado.
.gitdirectorio y establece elbareparámetro en la configuración en falso, debería comportarse como un repositorio normal donde puedegit checkoutobtener sus archivos.