Tester la recherche sensible à la casse
Dans cette étape, nous allons explorer comment git log --grep
gère la sensibilité à la casse. Par défaut, la recherche est sensible à la casse, ce qui signifie que "future" est différent de "Future".
Essayons de rechercher "Future" (avec une majuscule F) en utilisant git log --grep
:
git log --grep "Future" --oneline
D'après nos commits précédents, seul le message du premier commit "Send a message to the Future" contient "Future" avec une majuscule F. La sortie devrait ressembler à ceci :
<commit-id> Send a message to the future
Notez que le commit "Add third message about future" n'est pas inclus car il utilise un "f" minuscule.
Maintenant, essayons de rechercher "future" (avec un "f" minuscule) à nouveau :
git log --grep "future" --oneline
Cette fois, les deux commits qui contiennent "future" (indépendamment de la casse dans le message d'origine) devraient être affichés :
<commit-id> Add third message about future
<commit-id> Send a message to the future
Attendez, ce n'est pas correct ! L'étape précédente a montré les deux commits lors de la recherche de "future". C'est parce que le comportement par défaut de git log --grep
est insensible à la casse sur certains systèmes ou configurations.
Pour garantir une recherche sensible à la casse, vous pouvez utiliser l'option --i
(ou --ignore-case
). Essayons de rechercher "Future" en tenant compte de la casse :
git log --grep "Future" --oneline --i
Cette commande demande à Git d'ignorer la casse lors de la recherche. Maintenant, les deux commits contenant "future" ou "Future" devraient être affichés :
<commit-id> Add third message about future
<commit-id> Send a message to the future
Cela démontre que bien que le comportement par défaut puisse varier, l'utilisation explicite de l'option --i
rend la recherche insensible à la casse. Si vous avez besoin d'une recherche strictement sensible à la casse, vous devriez généralement vous fier au comportement par défaut sans --i
. Cependant, compte tenu de la possibilité de variations, il est bon de connaître l'option --i
pour les recherches insensibles à la casse.
Comprendre la sensibilité à la casse dans les recherches est important pour trouver précisément des commits, en particulier dans les projets où les conventions de messages de commit peuvent varier.