Git: ignora la carpeta node_modules en todas partes
Tengo un proyecto que contiene varios otros proyectos:
- Proyecto principal
- Miniproyecto 1
- Mini proyecto 2
Todo lo que contiene node_modules
la carpeta. Quiero que git ignore la carpeta sin importar dónde comience desde la carpeta raíz. Algo como esto para agregar en .gitignore:
*node_modules/*
Agregue node_modules/
o node_modules
al .gitignore
archivo para ignorar todos los directorios llamados node_modules
en la carpeta actual y cualquier subcarpeta como la imagen a continuación.
Utilice el resumen universal en la terminal en el directorio del proyecto:
toque .gitignore && echo "node_modules/" >> .gitignore && git rm -r --cached node_modules; estado de git
Funciona sin importar si has creado un .gitignore
o no, sin importar si lo has agregado node_modules
al seguimiento de git o no.
Luego confirme y envíe los .gitignore
cambios.
Explicación
touch
generará el .gitignore
archivo si aún no existe.
echo
y >>
se agregará node_modules/
al final de .gitignore
, lo que hará node_modules
que se ignoren la carpeta y todas las subcarpetas.
git rm -r --cached
elimina la node_modules
carpeta del control de git si se agregó antes. De lo contrario, se mostrará una advertencia pathspec 'node_modules' did not match any files
, que no tiene efectos secundarios y que puedes ignorar con seguridad. Las banderas hacen que la eliminación sea recursiva e incluya el caché.
git status
muestra los nuevos cambios. .gitignore
Aparecerá un cambio , while node_modules
no aparecerá porque git ya no lo rastrea.