Permettez-moi d'expliquer quelques cas d'utilisation du checkout avec des fichiers, des dossiers et des branches afin de faciliter la compréhension.
Disons que nous avons un dossier nommé dev
y index.html
également Tout est suivi et le répertoire de travail est propre.
Si je change accidentellement le nom du fichier index.html
et je veux annuler cela, je vais simplement utiliser git checkout index.html
il récupérera l'état de ce fichier à partir de la branche de dépôt actuellement sélectionnée.
Maintenant, si j'ai fait quelques changements dans dev
et je veux le récupérer. Je peux utiliser git checkout dev
mais que faire s'il existe déjà une branche nommée dev
au lieu de vérifier ce dossier, il va extraire cette branche. Pour éviter cela, je préfère faire git checkout -- dev
.
Maintenant, ici le double tiret nu représente la branche courante et demande à git le dossier dev
de la branche actuellement sélectionnée.
De même, si je fais git checkout alpha dev
il va tirer le dossier dev de la branche alpha.
Cette réponse est pour votre première question 'git checkout really mean'.