Git: árvore ish

Tree-ish é uma maneira de se referir a commits específicos no Git usando hash total ou parcial dos commits, refs, branch, remotes, ou uma combinação destes com aqueles ^, ~, @ caracteres. Eu ainda sou novo nisso, então agradeço quaisquer acréscimos e correções.

Referência: http://git-scm.com/book/en/Git-Tools-Revision-Selection

  • Hash completo:

    git show a5bec062afe1348b8317651c93cf5049e6b4e55e
  • Hash parcial:

    git show a5bec
  • Alguns exemplos de como usar refs (é realmente qualquer coisa que você possa encontrar em .git / refs):

    git show HEAD
    git show FETCH_HEAD

    git show ORIG_HEAD

    git show MERGE_HEAD
  • Acento circunflexo ( ^ ) – número de ancestrais antes de um determinado commit:

    git show HEAD^   # direct parent of HEAD
    git show a5bec
    ^^ # two commits before
  • Tildes ( ~ ) – número de compromissos para voltar:

    git show HEAD~6  # 6 commits before HEAD
  • Ordinal ( @ {n} ):

    git reflog {ref} # shows a log of where your ref has been
    git show HEAD@
    {0} # current HEAD
    git show HEAD@
    {2} # second prior value of HEAD
    git show master@
    {0} # current master
    git show master@
    {yesterday} # where master was yesterday
    git show master@
    {1.week.ago} # where master was a week ago