J'ai apporté des modifications à certains de mes fichiers dans mon dépôt local, puis j'ai fait git add -A
qui, je pense, a ajouté trop de fichiers à la zone de transfert. Comment puis-je supprimer tous les fichiers de la zone intermédiaire?
Après cela, je ferai simplement git add "filename"
manuellement.
Vous pouvez décompresser des fichiers de l'index à l'aide de
git reset HEAD -- path/to/file
Tout comme git add
, vous pouvez décompacter des fichiers de manière récursive par répertoire, etc., afin de tout décomposer en une seule fois, exécutez cette opération à partir du répertoire racine de votre référentiel:
git reset HEAD -- .
De plus, pour consultation ultérieure, la sortie de git status
vous indiquera les commandes à exécuter pour déplacer des fichiers d’un état à un autre.
Utilisation
git reset
pour décaler tous les fichiers mis en scène.
Si vous avez déjà validé plusieurs fichiers indésirables, vous pouvez les décompresser et dire à git de les marquer comme supprimés (sans les supprimer) avec
git rm --cached -r .
--cached
lui dit de supprimer les chemins d'accès de staging et l'index sans supprimer les fichiers eux-mêmes et -r
opère de manière récursive sur les répertoires. Vous pouvez ensuite git add
tous les fichiers que vous souhaitez suivre.
Vous pourriez utiliser
git reset HEAD
puis ajoutez les fichiers spécifiques que vous voulez avec
git add [directory/]filename
Comme indiqué dans d'autres réponses, vous devriez utiliser git reset
. Cela annulera l'action du git add -A
.
Note:git reset
est équivalent à git reset --mixed
qui le fait
Réinitialise l’index mais pas l’arbre de travail (c’est-à-dire que les fichiers modifiés sont conservés mais ne sont pas marqués pour la validation) et rapporte ce qui n’a pas été mis à jour. C'est l'action par défaut. [ git reset ]
Le meilleur moyen d’annuler votre fichier qui se trouve déjà dans la zone de transfert est git reset --hard, ce qui ramène vos fichiers transférés à l’arrière. Attention maintenant, cela supprimera les changements par étapes et non mis en scène.
Vous pouvez réinitialiser la zone d'activation de plusieurs manières:
Réinitialisez HEAD et ajoutez tous les fichiers nécessaires pour procéder à l’enregistrement, comme indiqué ci-dessous:
git reset HEAD ---> removes all files from the staging area
git add <files, that are required to be committed>
git commit -m "<commit message>"
git Push