¿Hay alguna manera de forzar git
para agregar un archivo a pesar del archivo .gitignore
?Agregue fuerza a pesar del archivo .gitignore
Respuesta
Ver man git-add
:
-f, --force
Allow adding otherwise ignored files.
Así ejecutar este
git add --force my/ignore/file.foo
Uhm que no funciona, en estado de git el archivo aún no se muestra – Mark
Bueno, lo probé para asegurarme de que realmente funciona y lo hace. ¿Puedes describir tu entorno (SO, versión de Git ...)? Esto es lo que básicamente hice: 'echo/foo" >> .gitignore; echo "bar"> foo; git add foo # debería arrojar un error; git add -p foo # works' (no se pueden pegar nuevas líneas en el comentario, ejecute los comandos 1 por 1 –
mi error - clonado nuevamente el repositorio ahora funciona. Gracias – Mark
A pesar de solución de trabajo de Daniel Böhmer, Ohad Schneider ofreció una mejor solución en un comentario:
Si el archivo es usualmente ignorado , y lo fuerza a agregarlo; puede volver a ignorarlo accidentalmente en el futuro (como cuando se elimina el archivo, luego se realiza una confirmación y se vuelve a crear el archivo.
Usted sólo debe un-ignorarlo en el archivo .gitignore así: Unignore subdirectories of ignored directories in Git
Esto es correcto. Estaba usando el --force opción para pequeños archivos de datos, y luego reorganizó un poco de carpeta s tructure y destruyó todos los archivos de seguimiento de fuerza. SIN EMBARGO: en '.gitignore' use'! Specific-file-name.txt' sin la jerarquía de carpetas, de esta manera el seguimiento seguirá el archivo alrededor del repositorio. – Merlin
Depende del escenario, p. Ej. alguna vez quiere excluir "1.txt" en todas las carpetas, y en algún momento "folder1/*. txt" –
Otra forma de lograrlo sería a editar el archivo temporal gitignore, agregar el archivo y luego volver al gitignore. Un poco hacky me siento
Acepto, esto no es lo que quiere hacer. – Merlin
- 1. Añadir .gitignore a gitignore
- 2. Equivalente del archivo ".gitignore" con Subversion
- 3. opuesto al archivo .gitignore?
- 4. ¿A dónde pertenece el archivo .gitignore?
- 5. gitignore por tamaño de archivo?
- 6. gitignore después del commit
- 7. Agregue un archivo .asmx a asp.net MVC?
- 8. "Uso del valor no inicializado" a pesar del memset
- 9. agregar # * # glob a .gitignore?
- 10. ¿Puedo incluir otro archivo .gitignore en un archivo .gitignore? (Como # include en lenguajes como C)
- 11. ¿Archivo .gitignore recomendado para proyectos de Python?
- 12. empujando archivos .gitignore a determinada distancia
- 13. Agregue texto/etiqueta en enlaces en el gráfico dirigido a fuerza D3
- 14. Agregue una sola línea al principio del archivo de texto
- 15. .gitignore no ignorará el directorio
- 16. Agregue el archivo de configuración ignorado a git repo como muestra
- 17. Agregue el archivo de compilación generado a classpath
- 18. Cómo fuerza un archivo MAKE a reconstruir un objetivo
- 19. Agregue un enlace personalizado a la página del proyecto hudson
- 20. rotación de fuerza del iPhone
- 21. gitignore sin archivos binarios
- 22. Agregue una nueva línea a un archivo CSV
- 23. Agregue una extensión de archivo personalizada a Netbeans
- 24. Implementación del diseño dirigido a la fuerza en C++
- 25. Combinar conflicto en .gitignore
- 26. ¿Cómo aplicar gitignore luego?
- 27. Copia de fuerza de archivo Ruby
- 28. Comentarios en .gitignore?
- 29. Posibles implicaciones de agregar archivos * .sdf a .gitignore
- 30. .gitignore/carpeta vs carpeta/
Una mejor pregunta puede ser: ¿por qué querrías hacer eso? Si desea rastrear un archivo, desactívelo (prefija su patrón en el archivo '.gitignore' con'! ', Por ejemplo'! Dont/ignore/this/file'). –
@OhadSchneider Esto es útil si fuerza los archivos de compilación a otra rama. Algunos proyectos lo hacen como StrongLoop para implementaciones seguras – Deminetix
@OhadSchneider Para nosotros, es más porque la mayoría de los desarrolladores instalan git con Visual Studio 2015, que agrega un gitignore global a la carpeta del usuario. Esto excluye archivos como * .dll y * .exe. Eso es genial para nuestros nuevos proyectos que solo usan paquetes nuget que se recuperan durante la compilación, pero para un pequeño número de proyectos más antiguos, todavía usamos DLL que se mencionan manualmente en la solución. Para esos proyectos, nos gustaría incluirlos manualmente, en lugar de decirle a todos los desarrolladores que comenten los archivos * .dll y * .exe en el gitignore global. – Nullius