Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.50.1 → 2.51.2 no changes
- 
        2.50.0
          
            
                                     2025-06-16 2025-06-16
- 2.48.1 → 2.49.1 no changes
- 
        2.48.0
          
            
                                     2025-01-10 2025-01-10
- 2.47.1 → 2.47.3 no changes
- 
        2.47.0
          
            
                                 2024-10-06 2024-10-06
- 2.45.3 → 2.46.4 no changes
- 2.45.2 no changes
- 
        2.45.1
          
            
                                     2024-04-29 2024-04-29
- 2.44.3 → 2.45.0 no changes
- 2.44.2 no changes
- 
        2.44.1
          
            
                                     2024-04-19 2024-04-19
- 2.43.6 → 2.44.0 no changes
- 2.43.5 no changes
- 
        2.43.4
          
            
                                     2024-04-19 2024-04-19
- 2.43.1 → 2.43.3 no changes
- 
        2.43.0
          
            
                                 2023-11-20 2023-11-20
- 2.42.4 no changes
- 2.42.3 no changes
- 
        2.42.2
          
            
                                     2024-04-19 2024-04-19
- 2.41.3 → 2.42.1 no changes
- 2.41.2 no changes
- 
        2.41.1
          
            
                                     2024-04-19 2024-04-19
- 2.40.4 → 2.41.0 no changes
- 2.40.3 no changes
- 
        2.40.2
          
            
                                     2024-04-19 2024-04-19
- 2.40.0 → 2.40.1 no changes
- 2.39.5 no changes
- 
        2.39.4
          
            
                                     2024-04-19 2024-04-19
- 2.39.3 no changes
- 
        2.39.2
          
            
                                     2023-02-06 2023-02-06
- 2.39.1 no changes
- 
        2.39.0
          
            
                                     2022-12-12 2022-12-12
- 2.38.1 → 2.38.5 no changes
- 
        2.38.0
          
            
                                 2022-10-02 2022-10-02
- 2.35.1 → 2.37.7 no changes
- 
        2.35.0
          
            
                             2022-01-24 2022-01-24
- 2.30.2 → 2.34.8 no changes
- 2.30.1 no changes
- 2.22.2 → 2.30.0 no changes
- 
        2.22.1
          
            
                                     2019-08-11 2019-08-11
- 
        2.22.0
          
            
                                 2019-06-07 2019-06-07
- 2.21.1 → 2.21.4 no changes
- 
        2.21.0
          
            
                             2019-02-24 2019-02-24
- 2.19.1 → 2.20.5 no changes
- 
        2.19.0
          
            
                                 2018-09-10 2018-09-10
- 2.11.4 → 2.18.5 no changes
- 
        2.10.5
          
            
                                 2017-09-22 2017-09-22
- 
        2.9.5
          
            
                             2017-07-30 2017-07-30
- 2.7.6 → 2.8.6 no changes
- 
        2.6.7
          
            
                             2017-05-05 2017-05-05
- 2.1.4 → 2.5.6 no changes
- 
        2.0.5
          
            
                                     2014-12-17 2014-12-17
RESUMO
git fsck [--tags] [--root] [--unreachable] [--cache] [--no-reflogs] [--[no-]full] [--strict] [--verbose] [--lost-found] [--[no-]dangling] [--[no-]progress] [--connectivity-only] [--[no-]name-objects] [--[no-]references] [<object>…]
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 refse todos os reflogs (a menos que a opção--no-reflogsseja 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 já existem, mas que nunca são usados "diretamente" (padrão). A opção --no-danglingpode ser usada para omitir essas informações da 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
- 
Não considere que os commits referenciados apenas por uma entrada num "reflog" sejam acessíveis. Essa opção destina-se apenas à busca de commits que costumavam estar numa referência, mas agora não estão mais, mas ainda estão no "reflog" correspondente. 
- --full
- 
Verifique não apenas os objetos em GIT_OBJECT_DIRECTORY ( $GIT_DIR/objects), mas também aqueles encontrados em pools de objetos alternativos listados emGIT_ALTERNATE_OBJECT_DIRECTORIESou$GIT_DIR/objects/info/alternates, e nos arquivos Git empacotados encontrados em$GIT_DIR/objects/packe nos subdiretórios dos pacotes correspondentes na fila de objetos alternativos. Esta é a predefinição atual; você pode desativá-lo com a opção--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 (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-danglingcaso não se importe com esta saída e queira acelerar um pouco as coisas ainda mais.
- --strict
- 
Habilite uma verificação mais rigorosa, ou seja, para capturar um modo de arquivo registrado com o bit g+w definido, que foi 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, têm objetos antigos que acionam essa verificação, mas é recomendável verificar novos projetos com esta opção. 
- --verbose
- 
Seja tagarela. 
- --lost-found
- 
Escreva os objetos pendentes em .git/lost-found/commit/ou.git/lost-found/other/, dependendo do tipo. Se o objeto for uma bolha, o conteúdo será gravado no arquivo, em vez do nome do seu objeto.
- --name-objects
- 
Ao exibir nomes de objetos acessíveis, além do SHA-1, exiba também um nome que descreva como eles são acessíveis, compatível com git-rev-parse[1], por exemplo, HEAD@{1234567890}~25^2:src/.
- --[no-]progress
- 
A condição do progresso é relatado no fluxo de erro predefinido ao estar conectado num terminal, a menos que as opções --no-progressou--verbosesejam utilizados. A opção--progressimpõem que a condição do progresso seja exibida mesmo que o fluxo de erro predefinido não esteja direcionado para um terminal.
- --[no-]references
- 
Control whether to check the references database consistency via git refs verify. See git-refs[1] for details. The default is to check the references database. 
CONFIGURAÇÃO
Tudo abaixo desta linha nesta seção, está seletivamente incluído na documentação git-config[1]. O conteúdo é o mesmo que é encontrado ali:
| Warning | Missing  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
- 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 corresponde ao valor do banco de dados do objeto. Isso indica um sério problema de integridade de dados. 
MENSAGENS FSCK
A seguir, listamos os tipos de erros que o comando git fsck detecta e o que cada erro significa, com a sua devida gravidade. A gravidade do erro, com exceção daqueles marcados como "(FATAL)", pode ser ajustada definindo a variável de configuração fsck.<msg-id> correspondente.
| Warning | Missing  See original version for this content. | 
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]