Git
Português (Brasil) ▾ Topics ▾ Latest version ▾ git-fsck last updated in 2.33.0

NOME

git-fsck - Verifica a conectividade e a validade dos objetos no banco de dados

RESUMO

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

DESCRIÇÃO

Verifica a conectividade e validade dos objetos em um banco de dados.

OPÇÕES

<objeto>

Um objeto a ser tratado como a cabeça de um rastreamento de inacessibilidade.

Caso nenhum objeto seja informado, a predefinição do comando git fsck retorna para o arquivo do índice, todas as referências SHA-1 no espaço de nomes refs e todos os reflogs (a menos que a opção --no-reflogs seja utilizada) serão utilizados como cabeçalhos.

--unreachable

Imprima os objetos que existam, porém que não sejam acessíveis a partir de nenhum dos nós de referência.

--[no-]dangling

Imprima os objetos que existam porém, que nunca são utilizados diretamente (predefinição). --no-dangling pode ser utilizado para omitir esta informação na saída.

--root

Relatar os nós raiz.

--tags

Tags de relatório.

--cache

Considere qualquer objeto registrado no índice também como um nó principal para um rastreamento de inacessibilidade.

--no-reflogs

Para serem acessíveis, não considere que os commits sejam referenciados apenas por uma entrada em um "reflog". Esta opção serve apenas para procurar commits que costumavam estar em um "ref", mas agora não estão mais, mas ainda assim em um reflog equivalente.

--full

Verifique não apenas os objetos em GIT_OBJECT_DIRECTORY ($GIT_DIR/objects), mas também os que forem encontrados nos conjuntos de objetos alternativos listados em GIT_ALTERNATE_OBJECT_DIRECTORIES ou $GIT_DIR/objects/info/alternates, nos arquivos Git encontrados em $GIT_DIR/objects/pack e nos pacotes dos subdiretórios correspondentes nos conjuntos dos objetos alternativos. Esta é a predefinição agora; desative-o com --no-full.

--connectivity-only

Verifique apenas a conectividade dos objetos acessíveis, certificando-se de que todos os objetos referenciados por uma tag, commit ou árvore acessível estejam presentes. Isso acelera a operação evitando a leitura completa das bolhas (embora ainda verifique caso existam as bolhas referenciadas). Isso detectará a corrupção nos commits e nas árvores, porém não fará nenhuma verificação semântica (como por exemplo, erros no formato). A corrupção nos objetos bolha não será detectada de forma alguma.

Tags, confirmações e árvores inacessíveis também serão acessadas para encontrar o topo dos segmentos pendentes na história. Use a opção --no-dangling caso não se importe com esta saída e queira acelerar um pouco as coisas ainda mais.

--strict

Ative uma verificação mais rigorosa para capturar um modo do arquivo gravado em um conjunto de bits g+w, criado por versões mais antigas do Git. Os repositórios existentes, incluindo o kernel do Linux, o próprio Git e o repositório esparso, possuem objetos antigos que acionam esta verificação. É recomendável verificar novos projetos com essa flag.

--verbose

Seja tagarela.

--lost-found

Dependendo do tipo, escreva os objetos pendentes em .git/lost-found/commit/ ou .git/lost-found/other/. O conteúdo será gravado no arquivo e não no nome do objeto caso o objeto seja uma bolha.

--name-objects

Ao exibir os nomes dos objetos acessíveis além do SHA-1 que descrevam como eles são acessíveis, é compatível com git-rev-parse[1], HEAD@{1234567890}~25^2:src/ por exemplo.

--[no-]progress

A condição do progresso é relatado no fluxo de erro predefinido ao estar conectado em um terminal, a menos que as opções --no-progress ou --verbose sejam utilizados. A opção --progress impõem que a condição do progresso seja exibida mesmo que o fluxo de erro predefinido não esteja direcionado para um terminal.

CONFIGURAÇÃO

Warning

Missing pt_BR/config/fsck.txt

See original version for this content.

DISCUSSÃO

O git-fsck testa se o SHA-1 e a sanidade geral dos objetos, faz o rastreamento completo da acessibilidade resultante e todo o resto. Imprime qualquer corrupção encontrada (objetos ausentes ou incorretos) , se utilizar a opção --unreachable, também serão impressos os objetos que existem mas que não estão acessíveis a partir de nenhum dos nós principais (ou da predefinição mencionada acima).

Você precisará encontrar quaisquer outros objetos corrompidos nos backups ou em outros arquivos (ou seja, remova-os e faça um rsync com outro site na esperança de que outra pessoa tenha uma cópia do objeto que você corrompeu).

Caso core.commitGraph seja verdadeiro, o arquivo commit-graph também será inspecionado utilizando git commit-graph verify. See git-commit-graph[1].

Diagnósticos Extraídos

aguardar pelos commits pendentes - potenciais cabeçalhos - devido à falta de informações dos cabeçalhos

Você não especificou nenhum nó como cabeçalho, portanto não será possível diferenciar entre os commits sem origem e os nós raiz.

diretório sem sha1 <dir>

O diretório que contém os objetos sha1 está ausente.

unreachable <tipo> <objeto>

O objeto <tipo> <objeto>, na verdade, não tem referência direta ou indireta com nenhuma das árvores ou commits já vistos. Significa que há um outro nó na raiz que você ainda não está informando ou que a árvore está corrompida. Caso você ainda não tenha perdido um nó na raiz, também possa excluir os nós que estejam inacessíveis, pois eles não possam ser utilizados.

missing <tipo> <objeto>

O objeto <tipo> <objeto>, tem referência mas não está presente no banco de dados.

dangling <tipo> <objeto>

O <tipo> do objeto <objeto> está presente no banco de dados, mas nunca é utilizado diretamente. A dangling commit could be a root node.

hash mismatch <objeto>

O banco de dados tem um objeto cujo hash não coincide com o valor do banco de dados do objeto. Isso indica um sério problema na integridade dos dados.

As Variáveis do Ambiente

GIT_OBJECT_DIRECTORY

utilize para especificar a raiz do banco de dados do objeto (geralmente $GIT_DIR/objects)

GIT_INDEX_FILE

utilizado para determinar o arquivo de índice do índice

GIT_ALTERNATE_OBJECT_DIRECTORIES

utilizado para determinar as raízes adicionais do banco de dados dos objetos (geralmente não definidos)

GIT

Parte do conjunto git[1]