Tengo un repositorio de git que ignora los archivos de imagen, así como algunos otros archivos, pero mi .gitignore
archivo solo lo tiene ignorando un config.php
archivo. ¿Hay algún archivo de ignorar global en algún lugar que parece que no puedo encontrar? Tengo que especificar archivos para agregarlos ahora, y me está dando esta advertencia:
Uno de sus archivos .gitignore ignora las siguientes rutas.
El contenido de mi ~/.gitconfig
archivo es solo mi dirección de correo electrónico.
Respuestas:
git check-ignore
Use el
git check-ignore
comando para depurar su archivo gitignore (excluir archivos).Por ejemplo:
La salida anterior detalla sobre el patrón coincidente (si lo hay) para cada nombre de ruta dado (incluida la línea).
Entonces, tal vez no se ignore su extensión de archivo, sino todo el directorio.
El formato devuelto es:
O use el siguiente comando para imprimir su
.gitignore
INICIO del usuario y la carpeta del repositorio:Uso alternativo
git add -f
que permite agregar archivos que de otro modo se ignorarían.Ver:
man gitignore
,man git-check-ignore
para más detalles.Sintaxis
fuente
Puede ser bueno saber que su configuración de git puede contener un archivo core.excludesfile que es una ruta a un archivo con patrones adicionales que se ignoran. Puede averiguar si tiene dicha configuración ejecutando (en el problemático repositorio de git):
Si imprime una ruta de archivo, mire el contenido de ese archivo para obtener más información.
En mi caso, instalé git a través de una versión anterior de boxen que ignoró el patrón '¿Icono?' que en mi caso me dio la advertencia, mencionada en esta pregunta, para los iconos de una carpeta (estoy en un sistema de archivos que no distingue entre mayúsculas y minúsculas, por eso Icon? coincide con los iconos).
fuente
Icon?
ser ignorado.Mira estos:
¿Ha buscado otros archivos .gitignore, ya que puede haber muchos de ellos?
Además, mire REPO / .git / config para ver si hay algo allí.
Repo exclude Las reglas locales por repositorio se pueden agregar al archivo .git / info / exclude en su repositorio. Estas reglas no están comprometidas con el repositorio, por lo que no se comparten con otros. Este método se puede utilizar para archivos generados localmente que no espera que otros usuarios generen, como archivos creados por su editor.
fuente
Tuve el mismo problema: git ignoraba un directorio con este error:
Finalmente descubrí que mi problema era una línea en mi
~/.gitignore_global
:que coincidía con el camino
app/views/admin/tags
. Lo arreglé agregando una barra inclinada al archivo global gitignorey git comenzó a rastrear mi directorio nuevamente.
fuente
help
directorio que estaba siendo ignorado. Afortunadamente encontré tu respuesta bastante rápido.Para mí, accidentalmente tuve un comodín en mi archivo ~ / .gitignore_global. ¿Quizás comprobar allí?
fuente
Otra cosa para probar: tenía un directorio B con su propio
.git
repositorio anidado en el directorio A de mi proyecto (pero no como un submódulo). Hice algunos cambios en B y quería convertirlo en un submódulo de buena fe. Creo que git A ignoraba automáticamente B porque contenía su propio repositorio (ver ¿ Repositorios git anidados sin submódulos? ). Cambié el nombre de la carpeta B e intenté clonarla nuevamente como un submódulo, y eso me traía el mensaje de error engañoso "ignorado por .gitignore". La solución fue eliminar.git
de B.fuente
Estaba teniendo exactamente el mismo problema que tú. La única respuesta que recibió enumeró algunos lugares para verificar, pero ninguno de ellos resolvió el problema para mí, y de su comentario tampoco creo que para usted. No tenía OTROS archivos .gitignore escondidos más abajo en el árbol de directorios; nada en .git / config; nada en .git / ingore / exclude
Si aún tiene el problema, marque esta respuesta . Me resolvió el problema
Básicamente, busque un archivo ~ / .gitignore. El mío se llamaba ~ / .gitignore_global. No sé cuando fue creado ( que ciertamente no lo hacen), pero he intentado un montón de configuración de Git es diferente cuando por primera vez instalado, por lo que uno de ellos debe haber puesto ahí.
¡Espero que su respuesta también te ayude!
fuente
Otra razón para recibir este mensaje de error de git es cuando se ejecuta el
git submodule add
comando mientras un comando git anterior se bloqueó y dejó el archivo de bloqueo (esto puede suceder, por ejemplo, cuando usa scripts personalizados que incluyen comandos git y no ha notado el choque).Si ejecuta el comando en su
git commit
lugar, mientras que ninguna de las condiciones ha cambiado (git submodule add
seguirá gritando que sus.gitignore
archivos son los culpables), verá otro informe de error en su lugar:y de hecho borrando el archivo de bloqueo:
resuelve el problema. (Esto sucede con la versión 2.1.0.9736 de git. Es posible que se solucione en futuras versiones de git).
fuente
Comprueba que tienes permiso para acceder a la carpeta. Acabo de encontrarme con esto y fue porque la carpeta era propiedad del usuario de www-data, no del usuario con el que había iniciado sesión en el terminal.
fuente
En mi caso, fue la barra diagonal en mi camino la que causó el problema ...
No trabajo
Trabajo
fuente
Una cosa más: si el directorio en el que se encuentra requiere acceso de root para escribir o ejecutar, asegúrese de estar en el usuario root. De hecho, recibí un error extraño en el que estaba tratando de agregar un submódulo y git seguía quejándose de que la ruta en la que estaba clonando estaba siendo ignorada por un archivo git ignore. Luego cambié a usuario root, volví a ejecutar el submódulo add y no hubo ningún problema.
fuente
Compruebe también
~/.gitignore
y~/.gitignore_global
cuál podría ser creado por algunos clientes de Git (por ejemplo, Atlassian SourceTree en Mac OS X).fuente
Asegúrese de que el
.gitignore
archivo no se ignore a sí mismo. Un error común es agregar una*
regla al.gitignore
archivo para ignorar todos los archivos de la carpeta actual. La solución a esto es agregar una excepción a.gitignore
:De esta forma, se ignorarán todos los archivos del directorio, excepto
.gitignore
.fuente