Comment pouvez fichiers binaires être ignoré en git
à l'aide de l' .gitignore
le fichier?
Exemple:
$ g++ hello.c -o hello
Le "bonjour" le fichier est un fichier binaire. Peut - git
ignorer ce fichier ?
Comment pouvez fichiers binaires être ignoré en git
à l'aide de l' .gitignore
le fichier?
Exemple:
$ g++ hello.c -o hello
Le "bonjour" le fichier est un fichier binaire. Peut - git
ignorer ce fichier ?
# Ignore all
*
# Unignore all with extensions
!*.*
# Unignore all dirs
!*/
### Above combination will ignore all files without extension ###
# Ignore files with extension `.class` & `.sm`
*.class
*.sm
# Ignore `bin` dir
bin/
# or
*/bin/*
# Unignore all `.jar` in `bin` dir
!*/bin/*.jar
# Ignore all `library.jar` in `bin` dir
*/bin/library.jar
# Ignore a file with extension
relative/path/to/dir/filename.extension
# Ignore a file without extension
relative/path/to/dir/anotherfile
Ajouter quelque chose comme
*.o
dans l' .gitignore fichier et de le placer à la racine de votre repo ( ou vous pouvez placer dans le sous-répertoire que vous voulez - il s'appliquera à partir de ce niveau ) et le vérifier.
Edit:
Pour les fichiers binaires sans extension, il est préférable de les placer en bin/
ou dans un autre dossier. Après tout il n'y a pas d'ignorer basé sur le type de contenu.
Vous pouvez essayer
*
!*.*
mais ce n'est pas à toute épreuve.
Pour ajouter tous les fichiers exécutables à votre .gitignore
(qui tu veux sans doute dire par "fichier binaire" à en juger par votre question), vous pouvez utiliser
find . -executable -type f >>.gitignore
Si vous n'avez pas de soins sur l'ordre des lignes dans votre .gitignore
, vous pouvez également mettre à jour votre .gitignore
avec la commande suivante pour supprimer les doublons et garde alphabétique tri intacte.
T=$(mktemp); (cat .gitignore; find . -executable -type f | sed -e 's%^\./%%') | sort | uniq >$T; mv $T .gitignore
Notez que vous ne pouvez pas sortie de tuyau directement à l' .gitignore
, parce que ce serait tronquer le fichier avant de l' cat
ouvre pour la lecture. Aussi, vous voudrez peut-être ajouter \! -regex '.*/.*/.*'
comme une option à trouver si vous ne souhaitez pas inclure les fichiers exécutables dans des sous-répertoires.
Votre meilleur pari avec des fichiers binaires est de leur donner une extension que vous pouvez facilement filtrer avec un modèle standard, ou de les placer dans les répertoires que vous pouvez filtrer au niveau du répertoire.
L'extension de la suggestion est plus applicable dans Windows, car les extensions sont la norme, et fondamentalement nécessaire, mais sous Unix, vous pouvez ou ne pouvez pas utiliser les extensions de vos fichiers binaires exécutables. Dans ce cas, vous pouvez les mettre dans une poubelle/ un dossier, et d'ajouter bin/
de votre .gitignore.
Dans votre très spécifique, petit-champ d'application exemple, vous pouvez simplement mettre des hello
dans votre .gitignore.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.