Alternar entre twigs con nombres largos en Git

¿Hay una manera fácil de cambiar de twig sin escribir nombres de twig largos? Probablemente me refiero a la última confirmación en la twig con un hash. Pero, ¿cómo obtengo el hash mientras se revisa otra twig?

Me gustaría hacer algo como:

> git branch -a master ab12cd... feature/separate-sound-channels 34efgh... > git checkout 34efgh 

No puedes simplemente extraer el hash porque, si bien obtendrá la confirmación correcta, te colocará en el estado "HEAD separado", lo que básicamente significa que tu copy de trabajo no está asociada a una twig específica, por lo que los commands git que mueven un La label de la twig no sabrá a qué twig afectar.

Como menciona @John Zwinck, git-completion.bash llevará a cabo la finalización de la cabecera (entre otras cosas) cuando se escribe un command git y se golpea la pestaña cuando se espera un nombre principal (twig o label) en la línea de command:

http://git-scm.com/book/es/Git-Basics-Tips-and-Tricks#Auto-Completion

 mouse:~/Documents/workspace/jackson-core (master) $ git branch -a * master temp remotes/origin/2.0 ... mouse:~/Documents/workspace/jackson-core (master) $ git tag 2.1.0b 2.1.1b jackson-core-2.0.0 jackson-core-2.0.0-RC1 ... mouse:~/Documents/workspace/jackson-core (master) $ git checkout <tab> 2.0 jackson-core-2.0.0-RC3 jackson-core-2.2.1 2.1 jackson-core-2.0.1 jackson-core-2.2.2 2.1.0b jackson-core-2.0.2 master 2.1.1b jackson-core-2.0.4 origin/2.0 2.2 jackson-core-2.0.5 origin/2.1 FETCH_HEAD jackson-core-2.0.6 origin/2.2 HEAD jackson-core-2.1.2 origin/HEAD ORIG_HEAD jackson-core-2.1.3 origin/gh-pages gh-pages jackson-core-2.1.4 origin/master jackson-core-2.0.0 jackson-core-2.1.5 temp jackson-core-2.0.0-RC1 jackson-core-2.2.0-rc1 jackson-core-2.0.0-RC2 jackson-core-2.2.0b mouse:~/Documents/workspace/jackson-core (master) $ git checkout 2.<tab> 2.0 2.1 2.1.0b 2.1.1b 2.2 

¿Qué tal con la finalización de tabs? http://code-worrier.com/blog/autocomplete-git/