Tengo un repositorio con un archivo, Hello.java
. Cuando lo compilo, Hello.class
se genera un archivo adicional .
Creé una entrada para Hello.class
en un .gitignore
archivo. Sin embargo, el archivo todavía parece estar rastreado.
¿Cómo puedo hacer que Git ignore Hello.class
?
Respuestas:
El problema es que
.gitignore
ignora solo los archivos que no fueron rastreados antes (porgit add
). Ejecutargit reset name_of_file
para quitar el escenario del archivo y mantenerlo. En caso de que desee eliminar también el archivo dado del repositorio (después de presionar), usegit rm --cached name_of_file
.fuente
git rm --cached name_of_file
eliminará el archivo de su repositorio de git. Incluso si lo agrega a su archivo .gitignore. Eso no ignora lo que está eliminando.git reset name_of_file
elimina el seguimiento y no elimina el archivo.Cómo ignorar nuevos archivos
Globalmente
Agregue la (s) ruta (s) a su (s) archivo (s) que le gustaría ignorar a su
.gitignore
archivo (y confirme). Estas entradas de archivo también se aplicarán a otras personas que echen un vistazo al repositorio.En la zona
Agregue la (s) ruta (s) a su (s) archivo (s) que le gustaría ignorar a su
.git/info/exclude
archivo. Estas entradas de archivo solo se aplicarán a su copia de trabajo local.Cómo ignorar los archivos modificados (temporalmente)
Para ignorar que los archivos modificados se enumeren como modificados, puede usar el siguiente comando git:
Para revertir esa ignorancia, use el siguiente comando:
fuente
local
git ignore y reinicié mi sistema, todavía muestra que funciona directamente limpio.update-index
truco útil , absolutamente perfecto para evitar cambiar un.gitignore
archivo, que luego es rastreado por Git.Agregue la siguiente línea a .gitignore:
Esto excluirá Hello.class de git. Si ya lo ha confirmado, ejecute el siguiente comando:
Si desea excluir todos los archivos de clase de git, agregue la siguiente línea a .gitignore:
fuente
Hello.class
a.gitignore
ignorará cualquier archivo llamadoHello.class
en cualquier subdirectorio. Si solo quiere ignorar el archivoHello.class
en el mismo directorio que el.gitignore
archivo, use una/Hello.class
línea en su lugar..gitignore
archivo?.gitignore
en cualquier parte de un proyecto git: si una ruta comienza con/
, será relativa a la ubicación del.gitignore
archivo; de lo contrario, se referirá recursivamente a los archivos en el directorio actual y sus directorios descendientes.1) Crea un
.gitignore
archivo. Para hacer eso, simplemente cree un.txt
archivo y cambie la extensión de la siguiente manera:Luego debe cambiar el nombre, escribiendo la siguiente línea en una ventana de cmd:
¿Dónde
git.txt
está el nombre del archivo que acaba de crear?Luego puede abrir el archivo y escribir todos los archivos que no desea agregar en el repositorio. Por ejemplo, el mío se ve así:
Una vez que tenga esto, debe agregarlo a su repositorio de Git. Tienes que guardar el archivo donde está tu repositorio.
Luego, en Git Bash, debe escribir la siguiente línea:
Si el repositorio ya existe, debe hacer lo siguiente:
git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
Si el paso 2 no funciona, debe escribir la ruta completa de los archivos que desea agregar.
fuente
Ignorar:
Para deshacer ignorar:
fuente
lstat(2)
costo adicional , se reserva el derecho de informar que la ruta ha sido modificada (...git commit -a
es libre de cometer ese cambio).Puede utilizar los siguientes métodos para ignorar / no ignorar los cambios en los archivos rastreados.
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
fuente
lstat(2)
costo adicional , se reserva el derecho de informar que la ruta ha sido modificada (...git commit -a
es libre de cometer ese cambio).Cree un
.gitignore
en el directorio donde está .git. Puede enumerar archivos separados por una nueva línea. También puedes usar comodines:fuente
.gitignore
archivos (a menos que el proyecto lo exija). Puede poner patrones para sus herramientas favoritas en su archivo de exclusión por usuario (conjuntocore.excludesFile
); funcionarán en todos sus repositorios. Por ejemplogit config --global core.excludesFile "$HOME/.git-user-excludes"
, luego póngalos en ese archivo.Desde el sitio oficial de GitHub:
Si ya tiene un archivo registrado y desea ignorarlo, Git no ignorará el archivo si agrega una regla más adelante. En esos casos, primero debe rastrear el archivo ejecutando el siguiente comando en su terminal:
o
fuente
Deberías escribir algo como
en tu
.gitignore
archivo.fuente
*.class
a su.gitignore
para hacer que git ignore todos los archivos que terminan en.class
.Agregue qué archivos desea ignorar al archivo
.gitignore
:*.clase
* .proyectos
* .prefs
*.proyecto
fuente
Al crear un archivo .gitignore. Ver aquí para más detalles: Git Book - Ignorando archivos
También revisa este: ¿Cómo haces que Git ignore los archivos sin usar .gitignore?
fuente
Si ya ha confirmado el archivo e intenta ignorarlo agregando al
.gitignore
archivo, Git no lo ignorará. Para eso, primero debes hacer lo siguiente:Si está comenzando el proyecto recientemente y desea agregar algunos archivos a Git ignore, siga los pasos a continuación para crear un archivo Git ignore:
.gitignore
archivo.fuente
También puede usar .gitattributes (en lugar de .gitignore) para excluir tipos de archivo completos. El archivo se explica por sí mismo, pero estoy pegando el contenido aquí como referencia. Presta atención a la última línea (* .class binary):
fuente
Agregue la siguiente línea a .git / info / exclude:
Hello.class
fuente
.git
?Tuve un problema similar con el archivo "dump.rdb".
Intenté agregar este archivo de varias maneras al archivo .gitignore, pero solo una funcionó.
NOTA: Agregar el archivo en otro lugar no funcionó.
Por ejemplo, consulte: https://gitlab.com/gitlab-org/gitlab-ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore
fuente
Esta página web puede ser útil y ahorrar tiempo al trabajar con
.gitignore
.Genera automáticamente archivos .gitignore para diferentes IDEs y sistemas operativos con los archivos / carpetas específicos que generalmente no desea extraer a su repositorio Git (por ejemplo, carpetas específicas de IDE y archivos de configuración).
fuente
Intenté esto
git status .idea/xyz.xml .idea/pqr.iml Output .DS_Store
echo " .idea/xyz.xml .idea/pqr.iml Output .DS_Store" >> .gitignore
git status .gitignore
Del mismo modo, podemos agregar el directorio y todos sus subdirectorios / archivos que queremos ignorar en estado git usando
directoryname/*
y ejecuté este comando desde elsrc
directorio.fuente
git rm -r --cached .
git add .
fuente
He intentado el
--assume-unchanged
y también el.gitignore
pero ninguno funcionó bien. Hacen que sea difícil cambiar de rama y que sea difícil fusionar los cambios de los demás. Esta es mi solución:Cuando me comprometo , elimino manualmente los archivos de la lista de cambios
Antes de tirar , guardo los archivos modificados. Y después de tirar, hago un escondite .
El paso 3 a veces desencadenará una fusión y puede generar conflictos que debe resolver, lo cual es algo bueno.
Esto me permite mantener cambios locales que no se comparten con otros miembros del equipo.
fuente