git show
git show: mostrar os detalhes de um commit específico, de uma tag ou de outro objeto.
O comando git show serve para exibir informações detalhadas sobre um objeto específico do Git, na maioria das vezes um commit. Ele mostra os metadados do commit (autor, data, mensagem) junto com o diff das alterações introduzidas por esse commit. Esse comando é especialmente útil quando você quer examinar o que exatamente mudou em um commit específico sem precisar compará-lo manualmente com o commit pai.
Por padrão, o git show exibe o commit mais recente da branch atual. Você pode indicar qualquer hash de commit, nome de branch, tag ou outra referência do Git para mostrar os detalhes daquele objeto específico. A saída inclui a mensagem do commit, as informações de autor, a data e hora e um diff unificado mostrando todas as alterações feitas naquele commit.
Quando a saída do git show é longa demais para caber em uma tela, o terminal entra no modo pager. Você pode rolar pela saída usando as setas e (ou PageUp e PageDown para rolar mais rápido). Para sair do modo pager, pressione q.
Exemplos
Mostre os detalhes do commit mais recente:
git showMostre os detalhes de um commit específico pelo hash:
git show 1a2b3c4dMostre só a mensagem e os metadados do commit, sem o diff:
git show --no-patchMostre as alterações de um arquivo específico em um commit:
git show 1a2b3c4d -- path/to/file.js-- é um separador especial que diz ao Git para tratar tudo que vem depois dele como caminho de arquivo, mesmo que pareça um nome de branch ou de tag. Ele é totalmente opcional, mas útil quando você quer evitar ambiguidade entre nomes de arquivos e referências do Git.
Mostre só os nomes dos arquivos que foram alterados em um commit:
git show --name-onlyEntendendo a saída
Quando você executa o git show em um commit, a saída normalmente se parece com isto:
commit 1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0tAuthor: John Doe <john.doe@example.com>Date: Mon Jan 15 14:30:25 2024 -0500Fix navigation bug in mobile view.Updated CSS media queries to properly handle small screens.diff --git a/src/components/Navigation.js b/src/components/Navigation.jsindex 1c2s3z5..4f5g6h7 100644--- a/src/components/Navigation.js+++ b/src/components/Navigation.js@@ -45,2 +45,6 @@- display: block;+ display: none;+}++@media (max-width: 768px) {+ .mobile-menu {+ display: block;+ }+}Essa saída mostra:
- Hash do commit: o identificador único desse commit específico.
- Autor: quem fez o commit, incluindo o endereço de e-mail.
- Data: quando o commit foi criado.
- Mensagem do commit: a descrição de quais alterações foram feitas e por quê.
- Diff: as alterações de fato feitas nos arquivos, no mesmo formato do
git diff.
A parte do diff segue as mesmas convenções das outras saídas de diff do Git: as linhas com o prefixo - mostram o que foi removido, e as linhas com o prefixo + mostram o que foi adicionado.
.gitignoregit checkoutgit configgit taggit worktree