Git 🌙
Português (Brasil) ▾ Topics ▾ Latest version ▾ git-name-rev last updated in 2.43.0

NOME

git-name-rev - Encontre os nomes simbólicos para determinadas "revs"

RESUMO

git name-rev [--tags] [--refs=<padrão>]
	       ( --all | --annotate-stdin | <commit-ish>…​ )

DESCRIÇÃO

Localiza os nomes simbólicos adequados para a revisão das pessoas através de qualquer formato analisável pelo comando git rev-parse.

OPÇÕES

--tags

Não utilize os nomes dos ramos e sim apenas as tags para nomear os commits

--refs=<padrão>

Use apenas as referências cujos nomes correspondam a uma determinada predefinição de shell. O padrão pode ser um nome do ramo, um nome de uma etiqueta ou um nome de referência totalmente qualificada. Se for usado várias vezes, use referências cujos nomes correspondam a qualquer um dos padrões shell informados. Use a opção --no-refs para limpar todas as predefinições de referência informadas anteriormente.

--exclude=<padrão>

Não utilize nenhuma "ref" cujo nome coincida com um determinado padrão shell. O padrão pode ser um nome do ramo, nome da tag ou um nome de referência totalmente qualificado. Caso seja utilizado várias vezes, uma "ref" será excluída quando coincidir com qualquer um dos padrões informados. Quando utilizado junto com --refs, uma "ref" será utilizada como uma correspondência apenas quando coincidir com pelo menos um padrão --refs e não coincidir com nenhum padrão --exclude. Utilize --no-exclude para limpar a lista dos padrões de exclusão.

--all

Liste todos os commits acessíveis de todas as "ref"

--annotate-stdin

Transforme o stdin substituindo todos os hexadecimais SHA-1 com 40 caracteres (digamos $hex) por "$hex ($rev_name)". Quando usado com a opção --name-only, substitua por "$rev_name", omitindo completamente o "$hex". Essa opção era chamada de --stdin nas versões mais antigas do Git.

Por exemplo:

$ cat sample.txt

Uma revisão abreviada 2ae0a9cb82 não será substituída.
O nome completo após a substituição é 2ae0a9cb8298185a94e5998086f380a355dd8907,
enquanto o objeto da árvore é 70d105cc79e63b81cfdcb08a15297c23e60b07ad

$ git name-rev --annotate-stdin <sample.txt

Uma revisão abreviada 2ae0a9cb82 não será substituída.
O nome completo após a substituição é 2ae0a9cb8298185a94e5998086f380a355dd8907 (master),
enquanto o objeto da árvore é 70d105cc79e63b81cfdcb08a15297c23e60b07ad

$ git name-rev --name-only --annotate-stdin <sample.txt

Uma revisão abreviada do 2ae0a9cb82 não será substituída.
O nome completo após a substituição é master,
enquanto o objeto da árvore é 70d105cc79e63b81cfdcb08a15297c23e60b07ad
--name-only

Em vez de imprimir o SHA-1 e o nome, imprima apenas o nome. Se for usado com a opção --tags, o prefixo usual da etiqueta "tags/" também será omitida do nome, combinando melhor com a saída do comando git-describe.

--no-undefined

Encerramento com um código de erro != 0 quando uma referência for indefinida, em vez de exibir undefined.

--always

Exiba o objeto commit abreviado exclusivamente como "fallback" (retirada).

EXEMPLOS

Com um commit, descubra onde ele está em relação às referências locais. Digamos que alguém tenha lhe escrito sobre o fantástico commit 33db5f4d9027a10e477ccf054b2c1ab94f74c85a. É claro que você analisa o commit, mas isso só informa o que aconteceu, mas não o contexto.

Entra o git name-rev:

% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a
33db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99~940

Agora você está mais esperto, pois sabe que ocorreram 940 revisões antes da versão v0.99.

Outra coisa legal que você pode fazer é:

% git log | git name-rev --annotate-stdin

GIT

Parte do conjunto git[1]

scroll-to-top