4

Как вы можете автоматически импортировать последнее значение github commit из github?Как добавить номер сборки и дату из github в ruby-код?

Целью было бы иметь это число, видимое на вашем нижнем колонтитуле веб-страницы, например, SO с датой.

Что структура:

У меня есть производственная ветвь, которая развернута с использованием Capistrano. Я хочу показать последний номер фиксации github с датой его развертывания.

ответ

5

Предполагая, что вы используете камень settingslogic для настройки приложения, это в ваших инициализаторах:

git_log = `git log -1 --pretty="format:%H %ci"` 
if git_log =~ /^([\d\w]+?)\s(.+)$/ 
    Settings[:git_revision] = $1 
    Settings[:git_update] = $2.strip 
end 

У вас будет последний мерзавец совершать SHA в Settings.git_revision и дате совершения в Settings.git_update.

Кроме того, вы можете получить последний тег:

git_tag = `git describe --tags --abbrev=0` 
Settings[:git_tag] = git_tag.strip if git_tag 

Он будет доступен в Settings.git_tag.

Update:

Я выпустил небольшой рубиновый камень git-revision. С его помощью вы можете просто сделать:

"commit: #{Git::Revision.commit} date: #{Git::Revision.date}" 
0

Как возможное решение, которое вы можете увидеть на (универсальные) решения с git smudge|clean filters (читай «Ключевое слово Expansion» часть)