2012-01-05 25 views
5

¿Cómo cambio el nombre del directorio .git?¿Cómo cambio el nombre del directorio .git?

Digamos, por ejemplo, tengo un repositorio con el que he estado trabajando durante un tiempo, pero ahora decido cambiar el nombre del directorio .git. Probé el comando bash mv pero después de hacerlo, ese estado de git decía que mi directorio de trabajo no es un repositorio de git.

+4

¿Por qué decidió hacer eso? – ceejayoz

+0

¿Por qué quieres cambiar el nombre del directorio **. Git **? eso es como querer renombrar el comando ** git ** a algo más. ¿Estás seguro de que no solo quieres cambiar el nombre del directorio 'repo'? – anirvan

+1

@anirvan bueno, en realidad, en caso de que cambie el nombre del comando git, no por ello deja trabajar;) – fge

Respuesta

19

Ni idea de por qué se va a querer cambiar el nombre de eso, pero de todos modos ...

Git espera:

  • o bien un directorio .git que existen en el directorio actual, o uno de sus padres ,
  • o la variable de entorno GIT_DIR que se va a establecer.

Por lo general, a menos que existan circunstancias especiales, nunca se debe pisar el .git. Es este directorio que contiene todo (de la misma manera Subversion 1.7+ utiliza un directorio .svn y CVS utiliza CVS directorios - sólo eso git sólo usa un directorio en la raíz)

La única excepción a esto son los repositorios de desnudos, por que necesita estar en el directorio de git, pero normalmente nunca toque estos directamente a menos que realmente sepa lo que está haciendo.

+2

Subversion también solo usa un único directorio en la raíz del proyecto desde v1.7 – knittl

+0

¡No lo sabía! Corregido, gracias – fge

+0

Tal vez simplemente no entiendo algo sobre la forma en que funciona Git. Por ejemplo, cuando clono un repositorio remoto como: git clone git: //git.kernel.org/pub/scm/git/git.git ¿Cómo es que el directorio de Git tiene acceso a través de ../git .git? –

7

No puede ni debe cambiar el nombre del directorio .git, es un nombre fijo (bueno, a menos que pase --git-dir= a cada comando git o establezca la variable de entorno GIT_DIR). Git busca este directorio cuando realiza operaciones en el repositorio, como git status.

¿Por qué decides que quieres cambiar el nombre del directorio .git? Si desea cambiar el nombre del repositorio, simplemente cambie el nombre del directorio principal de .git

+2

Me pareció útil tener un repo de git rooteado en mi ~/directorio para rastrear mis archivos de puntos, y ver qué cambios hacen varias aplicaciones a los archivos de configuración. Sin embargo, IDE como eclipse, detecta ~/workspace (incluso se ignora) y con frecuencia puede causar operaciones largas, como un "estado de git" no almacenado en caché en un directorio grande. Hay formas de excluir el repositorio raíz de cada herramienta mediante las preferencias, pero es más simple cambiar el nombre del directorio .git a .git_alt, y simplemente pasar --git-dir = ~/.git_alt cuando quiero rastrear algo relacionado con mi homedir git repo. –

+0

@TomH gracias, yo también quería esto por IDE. – starikovs

0

No puede cambiar el nombre del directorio .git. Git necesita poder encontrarlo.

1

Usted no tiene.

Git determina si está en un repositorio buscando el directorio .git en el directorio actual, luego el directorio principal, y así sucesivamente en el árbol. * Si cambia el nombre, Git no tiene idea de dónde buscar . Repare su repositorio volviéndolo a llamar al .git.

Si realmente está tratando de lograr algo aquí además de simplemente renombrar directorios por diversión, edite su pregunta o pregunte uno nuevo sobre su problema real.


* Con el fin de apoyar a los repositorios descubiertas, ya que esencialmente sólo contienen los contenidos del directorio .git en el nivel superior, sino que también busca a ciertos archivos.

0

Tuve el mismo problema debido a un error en Visual Studio 2013 (VS 2013) en combinación con la herramienta TFS. El proyecto TFS no se conecta o no se inicia cuando encuentra un .git-Project local que haya agregado anteriormente.

Primero cierre VS 2013 y cambie el nombre del '.git 'file a otro postfix (por ejemplo, "test.gitRENAMED"). Esto hace que la conexión a proyectos TFS esté disponible nuevamente en el próximo inicio de VS 2013.

Para evitar un repositorio git local roto, vuelva a nombrar el archivo '.git'.

Por desgracia, el explorador de Windows no permite asignar un nombre a un directorio nuevo a '.git' debido a sus usuarios-directory-políticas.

Sólo cambiar el nombre de la carpeta en una máquina Linux o mediante el Explorador de Windows-Herramienta "Total Commander" de nuevo.

Cuestiones relacionadas