J'ai commencé à utiliser git récemment… je viens de remarquer des clones de mes fichiers avec '~' ajouté à la fin… pourquoi cela se produit-il

StackOverflow https://stackoverflow.com/questions/801840

  •  03-07-2019
  •  | 
  •  

Question

J'ai utilisé git pour appliquer les modifications dans mon référentiel,

a suivi ces étapes

git add .
git commit -m "message"

mais a remarqué un clone du fichier contenant des modifications également présent dans le référentiel le nouveau fichier avait le symbole ' ~ ' ajouté à la fin.

pourquoi est-ce arrivé? Et comment puis-je l'éviter à l'avenir?
Également quelques idées sur la façon de supprimer le fichier avec " ~ " serait génial

Merci

Était-ce utile?

La solution

Votre éditeur génère des fichiers de sauvegarde au format FILENAME ~. (Emacs fait cela; on peut le persuader autrement.) Vous n'avez pas demandé à git d'ignorer les fichiers se terminant par ~. Avec git add. , vous dites à git d'ajouter tout ce que vous ne lui avez pas demandé d'ignorer.

Voir aussi: gitignore

Autres conseils

Pour compléter bendin's answer , ajoutez dans votre répertoire de travail un fichier .gitignore avec, par exemple:

*~
*.bak
*.old

Ce fichier .gitignore devra être ajouté et validé pour pouvoir rester dans ' git clone ', car il existe plusieurs niveaux de 'gitignore' .

  

Également quelques réflexions sur la façon de supprimer le fichier avec " ~ " serait génial

Avec gitignore, vous ignorez les fichiers qui ne font pas encore l'objet d'un suivi, mais si vous ajoutez un fichier et que vous le faites correspondre par la suite dans votre .gitignore, il sera toujours marqué comme mis à jour lorsque son contenu sera modifié.

Ainsi, le moyen de le supprimer des futurs commits, utilise:

git rm *~

D'autre part, si vous souhaitez supprimer les fichiers temporaires d'anciens commits, consultez branche-filtre-git . Faites attention si vous avez publié votre référentiel, car ces commandes réécrivent l’historique. Sauvegardez votre référentiel et soyez conscient de ce que vous faites si vous choisissez cette méthode.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top