git todavía muestra archivos modificados después de agregarlos a .gitignore
Estoy agregando esto al archivo .gitignore
.idea/*
pero de todos modos el estado es:
# modified: .gitignore
# modified: .idea/.generators
# modified: .idea/dovezu.iml
# modified: .idea/misc.xml
# modified: .idea/workspace.xml
Qué estoy haciendo mal ? Incluso agregué .idea/* al global ~/.gitignore_global pero el estado de git, de todos modos me muestra:
# modified: .gitignore
# modified: .idea/.generators
# modified: .idea/dovezu.iml
# modified: .idea/misc.xml
# modified: .idea/workspace.xml
Está .gitignore
funcionando, pero aún rastrea los archivos porque ya estaban en el índice.
Para detener esto tienes que hacer:git rm -r --cached .idea/
Cuando confirmes, el .idea/
directorio se eliminará de tu repositorio de git y las siguientes confirmaciones ignorarán el .idea/
directorio.
PD: podrías usar .idea/
en lugar de .idea/*
ignorar un directorio. Puede encontrar más información sobre los patrones en la página de manual de .gitignore .
Cita útil de la git-rm
página de manual.
--cached
Use this option to unstage and remove paths only from the index.
Working tree files, whether modified or not, will be left alone.
Para las personas que aún puedan estar buscando este problema, solo están mirando esta página.
Esto le ayudará a eliminar los archivos de índice almacenados en caché y luego agregar solo los que necesite, incluidos los cambios en su .gitignore
archivo.
1. git rm -r --cached .
2. git add .
3. git commit -m 'Removing ignored files'
Aquí hay un poco más de información.
- Este comando eliminará todos los archivos almacenados en caché del índice.
- Este comando agregará todos los archivos excepto aquellos que se mencionan en
gitignore
.- Este comando confirmará sus archivos nuevamente y eliminará los archivos que desea que git ignore, pero los mantendrá en su directorio local.