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.45.1 → 2.47.0 no changes
- 2.45.0 04/29/24
- 2.39.1 → 2.44.2 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
- 2.20.1 → 2.34.8 no changes
- 2.20.0 12/09/18
- 2.17.0 → 2.19.6 no changes
- 2.16.6 12/06/19
- 2.7.6 → 2.15.4 no changes
- 2.6.7 05/05/17
- 2.5.6 no changes
- 2.4.12 05/05/17
- 2.1.4 → 2.3.10 no changes
- 2.0.5 12/17/14
RESUMO
git reflog [show] [<log-options>] [<ref>] git reflog list 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>
DESCRIÇÃO
Este comando gerencia as informações registradas nos "reflogs".
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].
O comando assume vários subcomandos das diferentes opções dependendo do subcomando:
O subcomando show (é a opção predefinida, na falta de qualquer outro subcomando) mostra o registro da referência informada na linha de comando (ou a predefinição HEAD
). O reflog abrange todas as ações recentes e, além disso, o reflog HEAD
registra a troca de ramificações. O comando git reflog show
é um alias para o comando git log -g --abbrev-commit --pretty=oneline
; para mais informações consulte git-log[1].
The "list" subcommand lists all refs which have a corresponding reflog.
O subcomando expire remove as entradas mais antigas do reflog. São removidas do reflog as entradas de tempo mais antigas que expire
ou as entradas de tempo mais antigas que expire-unreachable
que não podem ser acessadas a partir da ponta atual. Normalmente, ele não é usado diretamente 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 (por exemplo, "git reflog delete master@{2}
"). Este subcomando também não é utilizado diretamente pelos usuários finais.
O subcomando exists verifica se uma referência tem um reflog. Ele encerra com uma condição igual a zero se o reflog existir e com uma condição diferente de zero se não existir.
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.reflogExpireUnreachable
, 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 para o valor da entrada no pico do reflog (ou seja,
<ref>@\{0\}
) se o topo da entrada anterior tiver sido eliminada. (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.
Esse cálculo envolve a passagem por todos os objetos acessíveis, ou seja, tem o mesmo custo que o comando
git prune
. Seu principal objetivo é corrigir a corrupção causada pela coleta de lixo usando versões mais antigas do Git, que não protegiam os objetos mencionados pelos 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]