El fichero .gitignore nos permite especificar que ficheros o carpetas queremos ignorar en nuestro repositorio.
El fichero .gitignore en Git permite a los programadores mantener una estructura de ficheros y directorios limpia y organizada de sus repositorios
Esto es porque no siempre se quiere incluir todos los ficheros de nuestro proyecto al repositorio.
Creando un fichero llamado .gitignore en el directorio raíz de nuestro proyecto podremos incluir que carpetas o ficheros queremos que sean excluidas.
Creando el gitigmore
Empezaremos creando el fichero .gitignore
1 |
$ touch .gitignore |
… y a continuación editamos el fichero e iremos incluyendo nuevas reglas.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# visual studio code rules .vscode/* !.vscode/settings.json !.vscode/tasks.json !.vscode/launch.json !.vscode/extensions.json # netbeans rules **/nbproject/private/ **/nbproject/Makefile-*.mk **/nbproject/Package-*.bash build/ nbbuild/ dist/ nbdist/ .nb-gradle/ # history extension .history/* |
En este caso estamos excluyendo ficheros de la carpeta .vscode a excepción de ciertos ficheros y también estamos incluyendo las carpetas de proyectos de netbeans.
Si aún no hemos añadido ni comiteado los ficheros a nuestro repositorio estos no serán incluidos.
¿Pero que sucede si ya tenemos un fichero comiteado y queremos ignorarlo?
Primeramente necesitaremos remover el fichero de la lista de commits.
1 |
$ git rm --cached 404.php |
Y el segundo paso es confirmar la eliminación del fichero del repositorio.
1 |
$ git commit -am "Remove 404 file" |
¿y si lo que queremos es ignorar una carpeta entera?
Para ignorar carpetas que previamente ya habíamos comiteado tendremos que hacer el mismo proceso.
1 |
$ git rm --cached .vscode/* |
Y a continuación confirmar la operación de eliminación de la carpeta y todos sus contenidos del repositorio.
1 |
$ git commit -am "Eliminada la carpeta .vscode del repositorio" |
… ¿y que hay de rehacer la caché del repositorio?
Por supuesto otra opción es rehacer la caché desde cero y volver a incluir los ficheros de proyecto de nuevo.
1 2 3 |
$ git rm -r --cached . $ git add . $ git commit -am 'Ignorando ficheros' |
Creando un fichero .gitignore Global
Es bastante peñazo tener que crear o copiar un fichero .gitignore en cada proyecto que creemos.
Una solución a este problema es crear un fichero .gitignore global que nos ahorrará mucho tiempo.
1 |
$ git config --global core.excludesfile ~/.gitignore_global |
Una vez creado lo editamos e incluimos las líneas con las carpetas y ficheros a ignorar de nuestro proyecto.
1 |
nano ~/.gitignore_global |
* Si usamos Windows este fichero .gitignore_global se guardará en el directorio raíz de nuestra carpeta de usuario.
Atajo de teclado para sacar la virgulilla (~)
- ALT Gr + 126
- Ctrl+Alt+4