Git
Français ▾ Topics ▾ Latest version ▾ git-fsck last updated in 2.42.0

NOM

git-fsck - Vérifier la connectivité et la validité des objets dans la base de données

SYNOPSIS

git fsck [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
	 [--[no-]full] [--strict] [--verbose] [--lost-found]
	 [--[no-]dangling] [--[no-]progress] [--connectivity-only]
	 [--[no-]name-objects] [<objet>…​]

DESCRIPTION

Vérifie la connectivité et la validité des objets en base de données.

OPTIONS

<objet>

Un objet à traiter comme la tête d’une trace d’inaccessibilité.

Si aucun objet n’est donné, git fsck utilise par défaut le fichier d’index, toutes les références SHA-1 dans l’espace de noms refs et tous les reflogs (sauf si --no-reflogs est donné) comme têtes.

--unreachable

Affiche les objets qui existent mais qui ne sont pas accessibles à partir de l’un des noeuds de référence.

--[no-]dangling

Affiche les objets qui existent mais qui ne sont jamais directement utilisés (par défaut). --no-dangling peut être utilisé pour omettre cette information de la sortie.

--root

Signaler les nœuds racines.

--tags

Afficher les étiquettes.

--cache

Considérer aussi un objet enregistré dans l’index comme la tête d’une trace d’inaccessibilité.

--no-reflogs

Ne pas considérer comme atteignables les commits qui ne sont référencés que par une entrée dans un reflog. Cette option n’est destinée qu’à rechercher les commits qui étaient dans une ref, mais qui ne le sont plus, mais qui sont toujours dans le reflog correspondant.

--full

Vérifie non seulement les objets dans GIT_OBJECT_DIRECTORY ($GIT_DIR/objects), mais aussi ceux trouvés dans les bassins d’objets alternatifs listés dans GIT_ALTERNATE_OBJECT_DIRECTORIES ou $GIT_DIR/objects/info/alternates, et dans les archives Git empaquetées trouvées dans $GIT_DIR/objects/pack et les sous-répertoires correspondants dans les bassins d’objets alternatifs. Ceci est maintenant la valeur par défaut ; vous pouvez la désactiver avec --no-full.

--connectivity-only

Vérifie uniquement la connectivité des objets accessibles, en s’assurant que tous les objets référencés par une balise, un commit ou un arbre accessible sont présents. Cela accélère l’opération en évitant de lire entièrement les blobs (bien qu’il soit toujours vérifié que les blobs référencés existent). Cela détectera la corruption dans les commits et les arbres, mais ne fera aucune vérification sémantique (par exemple, pour les erreurs de format). La corruption dans les objets blob ne sera pas du tout détectée.

Les tags, commits et arbres inaccessibles seront également accédés pour trouver les bouts de segments d’histoire qui pendent. Utilisez --no-dangling si vous ne vous souciez pas de cette sortie et que vous voulez l’accélérer davantage.

--strict

Active une vérification plus stricte, notamment pour attraper un mode de fichier enregistré avec le bit g+w activé, qui a été créé par des versions plus anciennes de Git. Les dépôts existants, y compris le noyau Linux, Git lui-même, et le dépôt sparse ont des objets anciens qui déclenchent cette vérification, mais il est recommandé de vérifier les nouveaux projets avec ce drapeau.

--verbose

Mode bavard.

--lost-found

Écrit les objets en suspens dans .git/lost-found/commit/ ou .git/lost-found/other/, selon le type. Si l’objet est un blob, son contenu est écrit dans le fichier, plutôt que son nom d’objet.

--name-objects

Lors de l’affichage des noms des objets atteignables, en plus du SHA-1, afficher également un nom qui décrit comment ils sont atteignables, compatible avec git-rev-parse[1], par exemple HEAD@{1234567890}~25^2:src/.

--[no-]progress

L’état d’avancement est affiché sur la sortie d’erreur standard quand elle est attachée à un terminal, à moins que --no-progress ou --verbose soit spécifié. --no-progress force l’état d’avancement même si le flux d’erreur standard n’est pas dirigé vers un terminal.

CONFIGURATION

Warning

Missing fr/includes/cmd-config-section-all.txt

See original version for this content.

Warning

Missing fr/config/fsck.txt

See original version for this content.

DISCUSSION

git-fsck teste le SHA-1 et l’intégrité générale des objets, et il fait un suivi complet de l’accessibilité et de tout le reste. Il affiche toute corruption qu’il trouve (objets manquants ou mauvais), et si vous utilisez le drapeau --unreachable, il affichera également les objets qui existent mais qui ne sont pas atteignables depuis l’un des noeuds de tête spécifiés (ou le jeu par défaut, comme mentionné ci-dessus).

Tous les objets corrompus que vous devrez trouver dans les sauvegardes ou autres archives (c’est-à-dire que vous pouvez simplement les supprimer et faire une « rsync » avec un autre site dans l’espoir que quelqu’un d’autre a l’objet corrompu que vous avez).

Si core.commitGraph est vrai, le fichier commit-graph sera également inspecté en utilisant git commit-graph verify. Voir git-commit-graph[1].

Diagnostics extraits

inaccessible <type> <objet>

L’objet<objet> de type <type> n’est pas réellement référencé directement ou indirectement dans aucun des arbres ou commits vus. Cela peut signifier qu’il y a un autre nœud racine que vous ne spécifiez pas ou que l’arbre est corrompu. Si vous n’avez pas manqué un nœud racine, alors vous pourriez aussi bien supprimer les nœuds inaccessibles puisqu’ils ne peuvent pas être utilisés.

<type> <objet> manquant

L’objet <type> <object> est référencé mais n’est pas présent dans la base de données.

<type> <objet> en suspens

L’objet <type> <objet>, est présent dans la base de données mais n’est jamais utilisé directement. Un commit en suspens peut être un nœud racine.

Le hachage ne correspond pas à <objet>

La base de données possède un objet dont le hachage ne correspond pas à la valeur de la base de données d’objets. Cela indique un grave problème d’intégrité des données.

MESSAGES FSCK

La liste suivante énumère les types d’erreurs que git fsck détecte et ce que chaque erreur signifie, avec leur sévérité par défaut. La gravité de l’erreur, autre que celles qui sont marquées comme "(FATAL)", peut être modifiée en définissant la variable de configuration fsck.<id-msg> correspondante.

Warning

Missing fr/fsck-msgids.txt

See original version for this content.

Variables d’environnement

GIT_OBJECT_DIRECTORY

utilisé pour spécifier le répertoire racine de la base de données des objets (habituellement $GIT_DIR/objets)

GIT_INDEX_FILE

utilisé pour spécifier le fichier d’index de l’index

GIT_ALTERNATE_OBJECT_DIRECTORIES

utilisé pour spécifier des répertoires racines supplémentaires de la base de données des objets (généralement non défini)

GIT

Fait partie de la suite git[1]

TRADUCTION

Cette page de manuel a été traduite par Jean-Noël Avila <jn.avila AT free DOT fr> et les membres du projet git-manpages-l10n. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le site https://github.com/jnavila/git-manpages-l10n .

scroll-to-top