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.39.1 → 2.43.0 no changes
- 2.39.0 12/12/22
- 2.37.4 → 2.38.5 no changes
- 2.37.3 08/30/22
- 2.35.1 → 2.37.2 no changes
- 2.35.0 01/24/22
DESCRIÇÃO
O comando assume vários subcomandos das diferentes opções dependendo do subcomando:
git reflog [show] [log-options] [<ref>] git reflog expire [--expire=<time>] [--expire-unreachable=<time>] [--rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all [--single-worktree] | <refs>…] git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] ref@{specifier}… git reflog exists <ref>
Os registros log de referência ou "reflogs", registram quando o cume dos
ramos, assim como, quais as outras referências que foram atualizadas no
repositório local. Os "reflogs" são úteis para especificar o valor antigo de
uma referência em vários comandos Git. Por exemplo, HEAD@{2}
quer dizer
"para onde HEAD costumava estar há dois movimentos atrás",
master@{one.week.ago}
quer dizer "para onde o "master" costumava apontar
uma semana atrás neste repositório local" e assim por diante. Para mais
detalhes consulte gitrevisions[7].
Este comando gerencia as informações registradas nos "reflogs".
O subcomando "show" (que também é o valor predefinido na ausência dos
subcomandos) exibe o registro log da referência informada através da linha
de comando (ou pela predefinição, HEAD
). O "reflog" cobre todas as ações
recentes assim como, o reflog HEAD
registra a alternância do ramo. O
comando git reflog show
é um apelido para git log -g --abbrev-commit
--pretty=oneline
; Para mais informações consulte git-log[1].
O subcomando "expire" remove as entradas mais antigas do "reflog". As
entradas serão removidas do "reflog" caso tenham o tempo anterior ao
expire ou expire-unreachable
, assim como aquelas que estiverem
inacessíveis. Normalmente, isso não é utilizado de forma direta pelos
usuários finais — em vez disso, consulte git-gc[1].
O subcomando "delete" exclui as entradas únicas do reflog. O seu argumento
deve ser uma entrada exata (como por exemplo, "git reflog delete
master@{2}
"). Este subcomando também não é utilizado diretamente pelos
usuários finais.
O subcomando "existe" verifica se uma "ref" tem um reflog. Encerra com a condição zero, caso o "reflog" exista, e a condição seja diferente de zero caso não exista.
OPÇÕES
Opções para expire
- --all
-
Processe os reflogs de todas as referências.
- --single-worktree
-
É predefinido que quando
--all
seja utilizado, os reflogs de todas as árvores de trabalho sejam processadas. Esta opção limita o processamento da reflogs apenas na árvore de trabalho atual. - --expire=<tempo>
-
Remova os lançamentos mais antigos que o tempo informado. Caso esta opção não seja definida, o tempo da expiração será obtido com a opção de configuração
gc.reflogExpire
, que por sua vez a sua predefinição retorna para 90 dias. A opção--expire=all
remove as entradas independentemente da idade;--expire=never
desativa a remoção dos lançamentos acessíveis (porém consulte--expire-unreachable
). - --expire-unreachable=<tempo>
-
Remova os lançamentos mais antigos que o
<tempo>
que não sejam acessíveis através do cume atual do ramo. Caso esta opção não seja definida, o tempo da expiração será obtido com a opção de configuraçãogc.reflogExpire
, que por sua vez a sua predefinição retorna para 90 dias. A opção--expire-unreachable=all
remove as entradas não acessíveis independentemente da sua idade;--expire-unreachable=never
desativa a remoção prévia dos lançamentos não acessíveis (porém consulte--expire
). - --updateref
-
Atualize a referência ao valor da entrada do topo do "reflog" (como por exemplo, <ref>@{0}) caso o topo do lançamento anterior tenha sido removido. (Esta opção é ignorada para referências simbólicas.)
- --rewrite
-
Caso o antecessor de uma entrada reflog seja removido, ajuste o seu SHA-1 "antigo" para ser igual ao "novo" campo SHA-1 da entrada que agora o precede.
- --stale-fix
-
Elimine qualquer entradas no reflog que apontem para "commits com problemas". Um commit com problema (broken commit) é um commit que não pode ser acessado por nenhum topo de referência e que se tenha referência, direta ou indiretamente, a um objeto commit, árvore ou bolha ausente.
Este cálculo envolve percorrer todos os objetos acessíveis, ou seja, tem o mesmo custo que o comando git prune. Ele se destina principalmente para corrigir a corrupção causada pela coleta de lixo usando as versões mais antigas do Git, que não protegiam os objetos referidos através dos "reflogs".
- -n
- --dry-run
-
Na verdade, não faça a poda de nenhuma entrada; apenas exiba o que teria sido podado.
- --verbose
-
Imprima informações extras na tela.
GIT
Parte do conjunto git[1]