web-dev-qa-db-fra.com

Comment ignorer certains fichiers dans Git

J'ai un référentiel avec un fichier, Hello.Java. Lorsque je le compile, un fichier Hello.class supplémentaire est généré.

J'ai créé une entrée pour Hello.class dans un fichier .gitignore. Cependant, le fichier semble toujours être suivi.

Comment faire en sorte que Git ignore Hello.class?

666
Kohan95

Le problème est que .gitignore ignore uniquement les fichiers qui n'ont pas été suivis auparavant (par git add). Exécutez git reset name_of_file pour désarchiver le fichier et le conserver. Si vous souhaitez également supprimer le fichier donné du référentiel (après avoir poussé), utilisez git rm --cached name_of_file.

750
Ondrej Slinták

Comment ignorer les nouveaux fichiers

Globalement

Ajoutez le (s) chemin (s) à vos fichiers que vous souhaitez ignorer dans votre fichier .gitignore (et validez-les). Ces entrées de fichier s'appliqueront également aux autres personnes qui empruntent le référentiel.

localement

Ajoutez le (s) chemin (s) à vos fichiers que vous souhaitez ignorer à votre fichier .git/info/exclude. Ces entrées de fichier ne s'appliqueront qu'à votre copie de travail locale.

Comment ignorer les fichiers modifiés (temporairement)

Pour ignorer que les fichiers modifiés soient listés comme modifiés, vous pouvez utiliser la commande git suivante:

git update-index --assume-unchanged <file>

Pour rétablir cette ignorance, utilisez la commande suivante:

git update-index --no-assume-unchanged <file>
191
Xman Classical

Ajoutez la ligne suivante à .gitignore:

/Hello.class

Cela exclura Hello.class de git. Si vous l'avez déjà commis, exécutez la commande suivante:

git rm Hello.class

Si vous souhaitez exclure tous les fichiers de classe de git, ajoutez la ligne suivante à .gitignore:

*.class
148
Armand

1) Créez un fichier .gitignore. Pour ce faire, il vous suffit de créer un fichier .txt et de modifier l'extension de la manière suivante:

Enter image description here

Ensuite, vous devez changer le nom en écrivant la ligne suivante dans une fenêtre cmd:

 rename git.txt .gitignore

git.txt est le nom du fichier que vous venez de créer.

Vous pouvez ensuite ouvrir le fichier et écrire tous les fichiers que vous ne souhaitez pas ajouter dans le référentiel. Par exemple, le mien ressemble à ceci:

#OS junk files
[Tt]humbs.db
*.DS_Store

#Visual Studio files
*.[Oo]bj
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
*.pyc
*.xml
ipch/
obj/
[Bb]in
[Dd]ebug*/
[Rr]elease*/
Ankh.NoLoad

#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*

#Project files
[Bb]uild/

#Subversion files
.svn

# Office Temp Files
~$*

Une fois que vous avez cela, vous devez l'ajouter à votre référentiel Git. Vous devez enregistrer le fichier où se trouve votre référentiel.

Ensuite, dans Git Bash, vous devez écrire la ligne suivante:

git config --global core.excludesfile ~/.gitignore_global

Si le référentiel existe déjà, procédez comme suit:

  1. git rm -r --cached .
  2. git add .
  3. git commit -m ".gitignore is now working"

Si l’étape 2 ne fonctionne pas, vous devez écrire l’itinéraire complet des fichiers que vous souhaitez ajouter.

100
SomeAnonymousPerson

Ignorer:

git update-index --assume-unchanged <path/to/file>

Pour annuler ignorer:

git update-index --no-assume-unchanged <path/to/file>
53
avj

Vous pouvez utiliser les méthodes ci-dessous pour ignorer/ne pas ignorer les modifications dans les fichiers suivis.

  1. Pour ignorer: git update-index --assume-unchanged <file>
  2. Pour revenir aux fichiers ignorés: git update-index --no-assume-unchanged <file>
42
kapillohakare

Créez un .gitignore dans le répertoire où se trouve .git. Vous pouvez lister les fichiers qu'il contient séparés par une nouvelle ligne. Vous pouvez également utiliser des caractères génériques:

*.o
.*.swp
22
terminus

Depuis le site officiel de GitHub:

Si vous avez déjà un fichier archivé et que vous souhaitez l'ignorer, Git ne l'ignorera pas si vous ajoutez une règle ultérieurement. Dans ces cas, vous devez d'abord extraire le fichier, en exécutant la commande suivante sur votre terminal:

git rm --cached FILENAME

ou

git rm --cached .
12
Mile Mijatovic

Vous devriez écrire quelque chose comme

*.class

dans votre fichier .gitignore.

11
KingCrunch

Ajoutez les fichiers que vous souhaitez ignorer dans le fichier .gitignore:

*.classe

*.projets

* .prefs

*.projet

7
Chinmoy

En créant un fichier .gitignore. Voir ici pour plus de détails: Git Book - Ignoring files

Vérifiez également celui-ci: Comment faire en sorte que Git ignore les fichiers sans utiliser .gitignore?

5
yasouser

Vous pouvez également utiliser .gitattributes (au lieu de .gitignore) pour exclure des types de fichiers entiers. Le fichier est assez explicite, mais je colle le contenu ici pour référence. Faites attention à la dernière ligne (binaire * .class):

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.gif binary
*.ico binary
*.mo binary
*.pdf binary
*.phar binary
*.class binary
3
David Niki

J'ai eu un problème similaire avec le fichier "dump.rdb".
J'ai essayé d'ajouter ce fichier de différentes manières au fichier .gitignore, mais une seule méthode a fonctionné.

Ajoutez votre nom de fichier, à la fin du fichier .gitignore

REMARQUE: L'ajout du fichier n'importe où ailleurs n'a pas fonctionné.

Par exemple, voir: https://gitlab.com/gitlab-org/gitlab-ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore

2

Cette page Web peut être utile et vous faire gagner du temps lorsque vous utilisez .gitignore.

Il génère automatiquement des fichiers .gitignore pour différents IDE et systèmes d'exploitation avec les fichiers/dossiers spécifiques que vous ne souhaitez généralement pas extraire de votre référentiel Git (par exemple, les dossiers et les fichiers de configuration spécifiques à l'EDI).

2
Jaime Caffarel

Ajoutez la ligne suivante à .git/info/exclude:
Bonjour classe

2
Dado

Si vous avez déjà validé le fichier et que vous essayez de l'ignorer en ajoutant au fichier .gitignore, Git ne l'ignorera pas. Pour cela, vous devez d'abord faire les choses ci-dessous:

git rm --cached FILENAME

Si vous démarrez le projet récemment et que vous souhaitez ajouter des fichiers à Git ignore, suivez les étapes ci-dessous pour créer un fichier Git ignore:

  1. Accédez à votre référentiel Git.
  2. Entrez "touch .gitignore" qui créera un fichier .gitignore.
2
Savyasachi

J'ai essayé le --assume-unchanged ainsi que le .gitignore mais ni l'un ni l'autre n'a bien fonctionné. Ils rendent difficile le changement de branche et la fusion des modifications des autres. Ceci est ma solution:

Lorsque je commets , j'ai manuellement supprime les fichiers de la liste des modifications

Avant que je tire , je stash les fichiers modifiés. Et après avoir tiré, je fais un stash pop.

  1. git stash
  2. git pull
  3. git Stash Pop

L’étape 3 peut parfois entraîner une fusion et peut entraîner des conflits que vous devez résoudre, ce qui est une bonne chose.

Cela me permet de conserver les modifications locales qui ne sont pas partagées avec les autres membres de l'équipe.

0
John Henckel