Obtener el nombre de la twig o el nombre de la label actual

Estoy escribiendo un module Puppet que gestiona la twig o label que está actualmente desprotegida en un repository local de Git. Básicamente me gustaría permitirles a los usuarios especificar qué versión de un repository les gustaría revisar. Esto podría ser master (una twig) o v3.6.2 (una label).

Esto es lo que tengo hasta ahora:

 exec { 'gitolite_select_version': command => "git checkout ${actual_version}", cwd => '/usr/src/gitolite', path => '/bin:/usr/bin', unless => "test \"$(git describe --contains --all HEAD)\" == ${actual_version}"" } 

Esto funciona bien en twigs como master , pero da mala salida cuando está en un HEAD separado como una label. Ejemplo en el maestro

 $ git describe --contains --all HEAD master 

Ejemplo en la label:

 $ git describe --contains --all HEAD tags/v3.6.2^0 

¿Hay algún command de Git que me proporcione el nombre de la sucursal o la label actual en un formatting simple y unificado?

¿Has considerado usar puppetlabs-vcsrepo ? Este es el tipo de cosas que maneja el module:

 vcsrepo { "/usr/src/gitolite": ensure => present, provider => git, source => 'git://example.com/repo.git', revision => $actual_version, }