Paramètres de configuration de la commande grep:
Les paramètres de commande «git grep» sont utilisés pour configurer cette commande ont mentionné ci-dessous.
Le nom du paramètre | But |
---|---|
grep.Type de motif | Il est utilisé pour définir le comportement de correspondance par défaut. |
grep.nom et prénom | Il est défini sur true pour activer l'option -Null-Name par défaut. |
grep.colonne | Il est défini sur true pour activer l'option-Colonne par défaut. |
grep.numéro de ligne | Il est défini sur true pour activer l'option -N par défaut. |
grep.ExtendRegexp | Il est défini sur true pour activer l'option -extended-regexp par défaut. Mais cette option ne fonctionnera pas si le grep. Le type de modèle contient une autre valeur à la place de la valeur par défaut. |
grep. threads | Il est utilisé pour définir le nombre de fils de travailleur Grep. |
grep.FallbacktonOindex | S'il est défini sur true, alors le git grep -no-index lorsque le git grep exécuté en dehors d'un référentiel git. La valeur par défaut de ce paramètre est fausse. |
Options de la commande grep:
Le 'git grep' La commande propose de nombreuses options pour rechercher le contenu du référentiel de différentes manières. Certaines des options GREP couramment utilisées ont décrit ci-dessous.
Option | But |
---|---|
-I, -ignore-case | Il est utilisé pour les correspondances insensibles aux cas des modèles et des fichiers. |
-je | Il est utilisé pour ne pas correspondre au modèle dans les fichiers binaires. |
-profondeur max | Il est utilisé pour chaque donnée sur la ligne de commande. La valeur de profondeur de -1 n'indique aucune limite. Cette option est ignorée si contient des jokers actifs. |
-R,- | Il fonctionne comme -max-Depth = -1, et c'est la valeur par défaut. |
-sans cerveau | Cela fonctionne comme -max-Depth = 0. |
-w, -word-regexp | Il est utilisé pour faire correspondre le motif qu'à la limite du mot. |
-V, -Invert-Match | Il est utilisé pour sélectionner les lignes non correspondantes. |
-nom et prénom | Il est utilisé pour forcer les chemins vers la sortie par rapport au répertoire du projet. |
-e | Il est utilisé pour les modèles en commençant par - et doit être utilisé avec le grep. |
-Et, -ou, -not, (…) | Ces options sont utilisées pour définir les multiples modèles de recherche. -ou est l'opérateur par défaut et-et a une priorité plus élevée que-ou. |
-E,-étendue-regexp, -g, -basic-regexp | Il est utilisé pour les modèles POSIX étendus / regexp de base. |
-P, -perl-regexp | Il est utilisé pour les modèles d'expression réguliers compatibles perl. |
-F, -Trages à fixe | Il est utilisé pour les motifs de chaîne fixe. |
-F | Il est utilisé pour lire les modèles du fichier. |
-n, -buil | Il est utilisé pour préfixer le numéro de ligne aux lignes correspondantes. |
-O, -Unly Matching | Il est utilisé pour imprimer uniquement les parties correspondantes (non vides) d'une ligne de correspondance. |
-C, -Count | Il est utilisé pour montrer le nombre de lignes qui correspondent. |
-casser | Il est utilisé pour imprimer une ligne vide entre les correspondances à partir des différents fichiers. |
-aider | Il est utilisé pour afficher toutes les options disponibles avec la description de la commande grep. |
Activer la configuration GREP:
Avant d'exécuter la commande «git grep» de ce tutoriel, exécutez la commande suivante pour activer -regexp prolongé et -n Options de la commande grep.
$ git config --global grep.ExtendRegexp True
$ git config --global grep.Livre de line
Utilisation de la commande grep pour la recherche:
Un référentiel local nommé librairie a été utilisé dans ce tutoriel pour vérifier la sortie de la commande grep pour la recherche de contenu dans le référentiel. Le référentiel contient deux fichiers. Ceux-ci sont liste de livres.php et booktype.php.
Exécutez la commande suivante pour rechercher le mot 'Type de livre' Dans les fichiers du référentiel.
$ git grep 'type de livre' $ (git rev-list -all)
La sortie suivante montre que le mot 'Type de livre' existe dans ligne 1 de la booktype.php déposer.
Exécutez la commande suivante pour rechercher les lignes des fichiers de référentiel avec les valeurs SHA commises qui contiennent 'huer' Au début des fichiers. Ici, le -i L'option a été utilisée pour la recherche insensible à la casse.
$ git grep -i 'boo *' $ (git rev-list - all)
La sortie suivante montre que 'huer' contient deux fichiers à la ligne numéro 1, mais l'entrée pour le liste de livres.php Le fichier est apparu deux fois pour deux commits.
Le modèle a été recherché dans le contenu du fichier de référentiel dans les commandes précédentes. Exécutez la commande suivante pour rechercher le contenu du fichier particulier.
$ git grep -f 'booktype.php.'
La sortie suivante montre que le booktype.php Le fichier existe dans le référentiel actuel et le fichier contient une seule ligne.
Exécutez la commande suivante pour rechercher le modèle, «réserver» dans le contenu des fichiers de référentiel. Ici, l'option -e a utilisé pour la correspondance des motifs.
$ git grep -e 'livre'
La sortie suivante montre que les deux liste de livres.php et booktype.php Les fichiers contiennent le mot 'Livre' à la ligne numéro 1.
Exécutez la commande suivante pour rechercher plusieurs modèles à l'intérieur du contenu des fichiers de référentiel. Ici, l'option -e a utilisée pour la correspondance de motifs regex, et le tuyau (|) fonctionne comme logique ou. Les fichiers qui contiennent le mot 'Livre' ou 'auteur' sera affiché après avoir exécuté la commande suivante.
$ git grep -e 'livre * | Auteur.'
La sortie suivante montre que le mot 'auteur' existe deux fois dans le autorine.php fichier, et le mot 'Livre' existe une fois dans le liste de livres.php et booktype.php déposer.
Conclusion:
Le 'git grep' est une commande utile pour rechercher le contenu spécifique dans le référentiel git. La recherche peut être effectuée de différentes manières en utilisant les différentes options de cette commande. Les utilisations de certaines options ont été décrites dans ce tutoriel en utilisant un référentiel de démonstration.