Comment puis-je supprimer des fichiers supprimés de mon référentiel Git?
J'ai supprimé un dossier d'une bibliothèque JavaScript, qui contenait de nombreux fichiers. Je suis ensuite allé valider les changements comme ceci:
git add .
git commit "message"
git status
Mais il montre tous ces fichiers comme "supprimés ....".
Comment puis-je les faire disparaître?
S'il répertorie les fichiers dans la section "à valider", procédez simplement à la validation; les fichiers resteront supprimés. (Git suit également les suppressions, pas seulement les modifications.)
S'il répertorie les fichiers dans la section "modifié mais pas mis à jour", vous avez deux options:
git checkout path/to/folder
git rm -r path/to/folder
Cela ajoutera également des suppressions.
git add -u .
Vérifiez ce qui doit être engagé avec:
git status
git add -u .
Si vous tapez git status et que le résultat indique à jour , mais en rouge, il indique
supprimé: dossier/exemple0.jpg
supprimé: dossier/exemple1.jpg
supprimé: dossier/exemple2.jpg
Vous devez le saisir pour qu'il soit supprimé définitivement git add -u .
alors tout le texte rouge sera marqué en vert.
**** N'oubliez pas l'espace entre la lettre et le point
Vous devez enregistrer qu'ils sont en effet destinés à être supprimés. De la même manière que vous enregistrez les modifications de fichier.
Juste au lieu de git add
, vous utiliserez git rm
.
vous devez dire à git qu'il est supprimé
git rm folder
ou si vous ne souhaitez pas les conserver dans le référentiel, vous pouvez les ajouter à .gitignore
je me trouve avoir un dossier "supprimé" inattendu après avoir "rm xxx" pour supprimer un fichier local.
je crée d'abord une branche temporaire et valide le dossier "supprimé" indésirable, puis supprime cette branche temporaire.
supposons que vous souhaitiez supprimer un fichier et que vous ne souhaitiez pas qu'il soit validé:
utilisez la commande:
git reset HEAD filename
puis faites un git status pour vérifier si le fichier à supprimer n'apparaît pas
puis faites un git commit
J'avais également des fichiers supprimés de couleur rouge lorsque j'ai pris pull
de upstream/master
. J'ai essayé différentes choses mais rien n'a fonctionné.
.
git reset --hard upstream/master
git pull upstream master