Basé sur la direction de David, j'ai résolu cela en créant un initialiseur "git_info.rb". Placez ce fichier dans le répertoire de votre Rails
Le contenu du git_info.rb sont:
GIT_BRANCH = `git status | sed -n 1p`.split(" ").last
GIT_COMMIT = `git log | sed -n 1p`.split(" ").last
Ensuite, dans votre pied de page, vous pouvez utiliser cette sortie (syntaxe HAML):
#rev_info
= "branch: #{GIT_BRANCH} | commit: #{GIT_COMMIT}"
Vous souhaiterez peut-être définir la couleur de police de #rev_info comme la couleur d'arrière-plan, de sorte que le texte est visible uniquement lorsque vous le mettez en surbrillance avec votre curseur.
J'ai juste essayé ceci, et pendant qu'il fonctionne en mode de développement, il semble que la branche soit écrasée avec le déploiement "de déploiement" de capistrano. Capistrano doit créer sa propre branche locale appelée "deploy" sur deploy?
par défaut, nous ajoutons 'set: copy_exclude, ".git/*"' dans notre Capistrano deploy.rb garder que les données supplémentaires hors du site. Donc, alors que ce qui précède fonctionne en développement, il n'y a pas de repo git pour la production. Cependant, capistrano (et heroku, d'ailleurs) crée un fichier REVISION qui est ajouté au déploiement de sorte que vous pouvez simplement utiliser la balise SHA à partir de là quand cela existe. – jwadsack
Pourquoi ne pas utiliser 'git describe' à la place –