Mostrar nomes de referência git correspondentes

Você já ativou uma GUI git e viu isto:

Cenário

Esses rótulos incluem uma lista de outros refs que compartilham o mesmo HEAD do seu HEAD atual. Se você sempre quis calcular isso na CLI, pode executar o seguinte comando:

git log --format="%d" -n 1 <ref name>

O que isso faz?

  • git-log tem um comando de formatação que permite construir uma saída personalizada.
  • Isso é invocado por meio do argumento --formatou --pretty. O %despaço reservado imprime nomes de ref.
  • Como estamos preocupados apenas com o commit mais recente (HEAD), podemos limitar a saída do log para exibir apenas o commit mais recente por meio do -n 1argumento.
  • Opcionalmente, podemos especificar qualquer válido <ref name>. Se for omitido, o padrão é HEAD.

Quando isso é útil?

Usando este método, você pode calcular de qual branch pai seu branch vem. Por exemplo, se você criar um branch e introduzir 1 commit, você pode emitir o comando: git log --format="%d" -n 1 HEAD~1para descobrir o nome do branch pai.

Isso também funciona com tags git. Se você quiser ver quais tags são aplicadas a um branch, você pode emitir este comando para listar todos eles.

Outro uso é verificar se um branch remoto está atualizado com o seu branch local, ou se você tem commits que ainda não enviou.

Dica extra: os nomes de ref também podem ser exibidos com o git log --decorateargumento mais curto, porém mais confuso .