El título lo dice todo. Estoy intentando agregar mis paquetes NuGet al repositorio. Se detecta todo menos los archivos .dll.
El archivo gitignore no contiene referencias a * .dll. Los archivos .dll no se reconocen cuando se encuentran en cualquier lugar de todo el repositorio. info / exclude también está vacío.
También he clonado el repositorio (sistema de archivos a sistema de archivos en lugar de remoto a sistema de archivos) sin suerte. Este problema también ocurre en dos equipos diferentes.
Podría agregar los archivos .dll manualmente, pero deberían ser rastreados. ¿Por qué no están siendo rastreados?
git config --get core.excludesfile
dice?Respuestas:
¿Tiene
~/.gitignore_global
o~/.gitignore
en su directorio de inicio que también podría incluir estos patrones de archivo?Ver https://help.github.com/articles/ignoring-files
fuente
git check-ignore
para averiguar dónde estaba el archivo. Aficionado en ~ / Documents / gitignore_global.txtSi usa SourceTree y la configuración predeterminada, ignorará todas las DLL de forma predeterminada ... Herramientas => Opciones => Git, luego "Editar archivo" ... agregue un "#" antes de .dll => "# .dll" .. . guardar y cerrar.
Luego, para el Explorador de Windows en la carpeta de paquetes, abra una terminal GitBash y escriba "git add". y déjelo funcionar, vuelva a SourceTree, espere un segundo y todas las DLL de paquetes que faltan aparecerán para que las confirme y las envíe.
fuente
No, no se deben rastrear, a menos que los haya agregado. Solo se realiza un seguimiento de los archivos que ya se han agregado y confirmado; eso es lo que significa "rastreado".
Intente agregar manualmente uno de ellos a través de
git add
y le dirá por qué los está ignorando y le pedirá que usegit add -f
para agregar el archivo de todos modos.fuente
Necesitas decirle explícitamente a git que rastree cualquier archivo nuevo.
Ejecutar
git add filename
para agregar el archivo al índice de git.Ejecutar
git commit
para confirmar cambios en su índice.git status
también debería mostrar la lista de archivos y directorios sin seguimiento.Si desea enumerar todos los archivos en el repositorio que gitignore ignora, puede ejecutar:
Si desea enumerar todos los archivos sin seguimiento en el repositorio:
fuente
Enfrenté un problema similar. No puedo agregar el archivo .dll desde el directorio del paquete a mi git, luego encontré el archivo gitignore_global.txt ya que sourcetree agregó automáticamente este archivo como una configuración global de ignorar git. Eliminé * .dll del archivo gitignore_global.txt y funciona bien para mí.
Ubicación del archivo gitignore_global.txt como se muestra a continuación
C: \ Users \ XXXX \ Documents \ gitignore_global.txt o puede encontrarlo en sourcetree TOOL => OPTION => pestaña GIT y descubrir la lista global de ignorados
fuente
En mi caso, no había referencias .dll en el archivo .gitignore y no tenía ningún archivo global. Sin embargo, en el subdirectorio .git, encontré un archivo llamado ms-persist.xml. Cerré todas las instancias de Visual Studio y luego agregué mis .dlls faltantes manualmente a ese archivo. Cuando volví a abrir Visual Studio, los .dlls mostraban que necesitaban ser registrados. Los registré y ahora estoy dorado ...
fuente
Tiene un
.gitignore
lugar global o más.gitignore
archivos en subdirectorios, en relación con la raíz de su proyecto.En sistemas Linux y MacOS, lo más probable es que el git-ignore global esté en su hogar
~/
~/.gitignore_global
En Windows, es probable que esté en su directorio de usuarios. O su usuario local (que puede averiguar escribiendo
ECHO %USERPROFILE%
owhoami
en la línea de comandos.Si no está allí, seguramente a
.gitconfig
está presente en su lugar. Busque aquí la ubicación del gitignore (por ejemplo, laDocuments
carpeta del usuario ).Editar : Úselo
git config --list --show-origin
para obtener detalles de la configuración de git que contribuye y sus ubicaciones de archivo correspondientes.fuente
Sé que esta pregunta es muy antigua, pero agrego para otros que puedan visitar esta pregunta en el futuro. Puede modificar su archivo de ignorar global como las respuestas mencionadas anteriormente, pero eso afectará TODOS sus repositorios de git. Si, en cambio, desea un enfoque más granular, puede excluir archivos DLL específicos o carpetas específicas en su proyecto individual .gitignores. Esto anula la configuración de ignorar todos y obliga a los archivos a ser detectados y manejados por git. Creo que este es un mejor enfoque.
.gitignore (para su proyecto en particular)
fuente