J'ai accidentellement validé le .idea/
répertoire dans git. Cela provoque des conflits partout où je dois vérifier mon dépôt. Je me demandais comment supprimer ces fichiers de la télécommande?
J'ai toujours besoin de ces fichiers localement car l'IDE Intellij en a besoin. Je ne veux juste pas qu'ils soient dans la télécommande. J'ai ajouté le répertoire .idea/
à mon .gitignore
dossier et je me suis engagé et j'ai poussé ce fichier à distance. Cela semble cependant n'avoir aucun effet lors de mon paiement sur mon autre machine. Je reçois toujours le message d'erreur:
error: The following untracked working tree files would be overwritten by checkout:
.idea/.name
.idea/compiler.xml
.idea/copyright/profiles_settings.xml
.idea/encodings.xml
.idea/misc.xml
.idea/modules.xml
.idea/scopes/scope_settings.xml
.idea/uiDesigner.xml
.idea/vcs.xml
.idea/workspace.xml
commit
avec-v
pour afficher le diff dans votre éditeur lorsque vous écrivez le commit. Il aide à prévenir ce type d'erreur et vous aide à concentrer votre message de validation sur ce que vous avez changé..idea
.Réponses:
Ajoutez le répertoire .idea à la liste des fichiers ignorés
Tout d'abord, ajoutez-le à
.gitignore
, afin qu'il ne soit pas accidentellement commis par vous (ou quelqu'un d'autre) à nouveau:Retirez-le du référentiel
Deuxièmement, supprimez le répertoire uniquement du référentiel, mais ne le supprimez pas localement. Pour y parvenir, faites ce qui est indiqué ici:
Envoyer la modification aux autres
Troisièmement, validez le
.gitignore
fichier et supprimez-le.idea
du référentiel. Ensuite, poussez-le vers la ou les télécommandes.Résumé
Le processus complet ressemblerait à ceci:
(facultativement, vous pouvez remplacer la dernière ligne par
git push some_remote
, oùsome_remote
est le nom de la télécommande vers laquelle vous souhaitez pousser)la source
fatal: pathspec '.idea' did not match any files
lorsque vous exécutezgit rm -r --cached .idea
, supprimez votre dossier .idea, extrayez de github et réessayez..idea
dossier pour valider les fichiers?Vous pouvez le supprimer du référentiel et valider la modification.
Après cela, vous pouvez le pousser vers la télécommande et chaque checkout / clone après cela sera ok.
la source
Vous devez ajouter un fichier .gitignore à votre projet et y ajouter
/.idea
. Vous devez ajouter chaque répertoire / fichier sur une seule ligne.Si vous avez un fichier .gitignore existant, vous devez simplement ajouter une nouvelle ligne au fichier et la placer
/.idea
sur la nouvelle ligne.Après cette
git rm -r --cached .idea
commande d' exécution .Si vous rencontrez une erreur, vous pouvez exécuter la
git rm -r -f --cached .idea
commande. Après tout coursegit add .
, puisgit commit -m "Removed .idea directory and added a .gitignore file"
et enfin pousser les modifications en cours d' exécutiongit push
commande.la source
Il vaut mieux effectuer cela sur la branche Master
Modifiez le fichier .gitignore. Ajoutez-y la ligne ci-dessous.
Supprimez le dossier .idea du référentiel distant. en utilisant la commande ci-dessous.
Pour plus d'informations. reference: Suppression de fichiers d'un référentiel Git sans les supprimer réellement
Fichier stage .gitignore. Utilisation de la commande ci-dessous
Commettre
Pousser vers la télécommande
la source