Corrigé: Gitignore ne fonctionne pas

GitHub est devenu un pionnier dans le domaine de la collaboration de code et du partage de référentiel. GitHub est principalement un logiciel de contrôle de version qui permet aux utilisateurs de contrôler le contrôle de version distribué et le SCM (gestion de code source). Cette plate-forme est utilisée par les principales entreprises et entreprises du monde entier.

.gitignore

De telles plates-formes ont leurs aspects techniques et leurs problèmes. Un problème spécifique rencontré par les codeurs était que .gitignore ne fonctionnait pas dans GitHub. La plate-forme a ignoré le .gitignore ou a travaillé partiellement. Il est intéressant de noter que le problème peut être légèrement différent dans chaque cas puisque chaque cas est un scénario complètement différent. Cependant, les solutions que nous énumérons contiendront des correctifs qui fonctionneront de manière universelle.

Qu'est-ce que .gitignore?

Git (ou GitHub) voit tous les fichiers de votre répertoire de travail. Il caractérise chaque fichier comme l'un des trois:

  • Suivi: Ces fichiers sont soit validés, soit stockés précédemment dans l'historique.
  • Untracked: Ce sont les fichiers qui n'ont pas encore été mis en scène ou validés .
  • Ignored: Ce sont les fichiers que l'utilisateur a lui-même dit à Git d'ignorer complètement.

Ces fichiers ignorés peuvent varier d'un scénario à l'autre et sont principalement des fichiers générés par une machine ou des artefacts de construction. C'est la pratique courante. vous pourriez ignorer divers autres fichiers en fonction de vos propres besoins. Quelques exemples de ces fichiers sont:

  • Code compilé: Ces fichiers portent généralement l’extension .class, .pyc, .ccp, etc.
  • Fichiers système cachés: ce sont des fichiers qui sont utilisés par le système pour ses opérations, mais qui sont cachés de la vue, par exemple, DS_Store ou Thumbs.db, etc.
  • Construisez les répertoires de sortie: ce sont surtout les répertoires / bin, / out, etc.
  • Caches de dépendances: Ces fichiers peuvent être les contenus de modules / node ou / packages.
  • Fichiers de configuration IDE: Ce sont des fichiers de configuration qui sont pour la plupart créés ou gérés par votre logiciel IDE.
  • Fichiers générés au moment de l'exécution: Certains programmes créent des fichiers au moment de l'exécution. Si l'un de ces codes est exécuté, certains fichiers peuvent être générés au moment de l'exécution dans votre dossier de travail et vous pouvez les ignorer dans Git.

Quel que soit le fichier que vous souhaitez ignorer, il fait l'objet d'un suivi dans un fichier spécial nommé .gitignore, qui est généralement vérifié à la racine de votre référentiel de travail. Selon la documentation officielle de GitHub sur le sujet, il n’existe pas de commande spécifique de gitignore. Au lieu de cela, vous devez éditer manuellement le fichier que vous souhaitez ignorer. Le fichier .gitignore contient des modèles qui correspondent aux noms de fichier de votre référentiel de travail et permettent de déterminer si un fichier spécifique doit être ignoré ou non.

Qu'est-ce qui fait que .gitignore ne fonctionne pas?

La fonctionnalité .gitignore fonctionne peut-être parfaitement mais vous ne l’avez peut-être pas configurée correctement. Dans toutes nos enquêtes, nous avons conclu que le module fonctionnait effectivement. La raison pour laquelle les codeurs sont incapables d'utiliser la fonctionnalité est principalement due au fait qu'ils n'ont pas configuré correctement le fichier ou que certaines conditions ne sont pas remplies dans le code sous-jacent.

Voici quelques solutions qui pourraient fonctionner pour vous. Chaque solution peut ne pas être applicable dans votre cas, alors assurez-vous de passer à la suivante si les conditions initiales ne sont pas remplies.

Solution 1: Vérification du fichier .gitignore

Un cas intéressant est sorti où nous avons vu que le fichier .gitignore a été créé dans le mauvais format. Ce problème particulier se produisait lorsque les utilisateurs créaient le fichier à l'aide de l'application par défaut de Notepad sous Windows. Il s'avère que Notepad écrit le fichier au format Unicode au lieu du format ANSI. Dans cette solution, nous enregistrerons les modifications de Notepad au format correct de .gitignore et verrons si cela résout le problème.

Remarque: vous devez supprimer l'extension de fichier .txt du fichier lorsque vous créez un nouveau fichier à l'aide du Bloc-notes.

  1. Après avoir écrit le code ou modifié un nouveau document texte dans le Bloc-notes, cliquez sur Fichier et sélectionnez Enregistrer sous .

Enregistrer sous - Bloc-notes
  1. Maintenant, devant le codage, sélectionnez ANSI . Maintenant, supprimez l'extension de fichier de .txt et enregistrez le fichier sous le nom ' .gitignore '. Sélectionnez le bon répertoire et sauvegardez.

Sélection de ANSI comme type de codage
  1. Naviguez maintenant dans le répertoire et vérifiez si le fichier correct est créé. Maintenant, testez à nouveau avec Git et voyez si la fonctionnalité Ignorer fonctionne comme prévu.

Les développeurs doivent s'abstenir d'utiliser le bloc-notes par défaut sous Windows. Au lieu de cela, vous devriez utiliser le bloc-notes approprié des programmeurs. Notepad ++, etc. est un exemple. Dans ceux-ci, vous n'aurez pas de tels problèmes.

Remarque: si votre fichier est déjà enregistré au format UNICODE, vous devez enregistrer le contenu correctement au format ANSI si vous souhaitez que votre fichier soit correctement détecté par Git.

Solution 2: Vérification du fichier que vous essayez d'ignorer

Une autre condition sur laquelle travaille .gitignore est que votre fichier ne doit pas encore faire partie du référentiel . C'est un aspect essentiel car si cela est vrai, le fichier ne sera pas ignoré car il est déjà ajouté au référentiel. Git ne peut pas ignorer cela même si vous placez son nom ou sa règle dans le fichier .gitignore. Donc, essentiellement, Git ignore uniquement les fichiers non suivis .

Vous devez examiner votre structure (référentiel) et vous assurer que le fichier que vous essayez d'ignorer actuellement n'est pas ajouté au référentiel. Si tel est le cas, vous devez supprimer le fichier du référentiel et, une fois les dernières modifications validées, ajouter son nom à .gitignore (vous pouvez également copier le contenu du fichier et, après l'avoir supprimé, le répliquer sous un autre nom). .

Solution 3: ajout de fichiers dans le référentiel

Si vous avez déjà ajouté des règles dans .gitignore mais que les fichiers que vous souhaitez ignorer sont déjà ajoutés, nous pouvons rajouter les fichiers. Ajouter signifie que nous allons tout supprimer de l'index de Git, puis rajouter le tout dans votre référentiel. Lorsque nous rajouterons des fichiers à partir de zéro, nous garderons à l’esprit les règles que vous avez ajoutées dans .gitignore et seuls les fichiers corrects seront ajoutés.

Remarque: vous devez également sauvegarder votre code ailleurs avant d'exécuter cette solution. Il est toujours bon d'avoir une sauvegarde au cas où.

  1. Exécutez la commande suivante. Cela détachera et supprimera les chemins de vos fichiers de l'index git de manière récursive.
 git rm -r --cached. 
  1. Une fois que cela est exécuté, vous devez exécuter la commande suivante. Cela rajoutera tous vos fichiers et puisque .gitignore aura les règles, seuls les fichiers corrects seront mis à jour.
 git add. 
  1. Maintenant, nous allons valider tous vos fichiers dans l'index en utilisant le code ci-dessous:
 git commit -m ".gitignore fonctionne maintenant" 

Inspectez maintenant vos fichiers et voyez si le problème est résolu. Vous pouvez à nouveau utiliser .gitignore sans aucun problème.

Des Articles Intéressants