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

NOME

git-reflog - Gerencie informações do reflog

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 show

O git reflog show aceita qualquer uma das opções aceitas pelo comando git log.

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ção gc.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.

Opções para o delete

O git reflog delete aceita as opções --updateref, --rewrite, -n, --dry-run, e --verbose, com os mesmos significados de quando são utilizadas com expirar.

GIT

Parte do conjunto git[1]

scroll-to-top