Хорошо, вопрос, который кажется более сложным (для меня), чем кажется на первый взгляд. Разрабатываю сайты на фреймворке symphony. Но некоторые сайты размещены на серверах, к которым у меня нет прямого доступа. Итак, чтобы отслеживать, установлена ли последняя версия, я добавил значение в заголовок HTML страницы входа. Теперь я всегда вручную обновляю это значение (в TWIG). А теперь мучающий меня вопрос:
Можно ли «автоматизировать», чтобы последнее значение коммита GIT добавлялось автоматически (и прозрачно, что означает, что никаких усилий не требуется)? Я думал добавить значение в файл .env и попытаться заполнить его правильным значением, но, честно говоря, я немного изо всех сил пытаюсь понять, как я могу это сделать....
Если есть другие предложения по поддержанию приличного отслеживания версий, которое относительно прозрачно для реальных пользователей сайта, то это, конечно, также приветствуется...
Нет, к сожалению нет. Я просто использую его для истории версий и изменений. Я компилирую пакеты "symfony", а затем отправляю их представителю пользователя, который извлекает их на сервер без подключения к Интернету (это внутреннее решение компании)...
Единственный другой способ, который я могу придумать, - это создать скрипт, который запускается, когда вы фиксируете и увеличиваете счетчик. Это может помочь и дать вам несколько идей для добавления версии. По сути, при фиксации он может обновить файл в вашем проекте, а затем ваш шаблон ветки всегда может просто прочитать этот файл.
Вы имеете в виду версию Symfony? Или хеш фиксации Git? Версия Symfony доступна как Symfony\Component\HttpKernel\Kernel::VERSION, но ваше собственное ядро расширяет ее, чтобы вы могли использовать App\Kernel::VERSION
Версия symfony довольно статична, поэтому я имею в виду либо хеш коммита GIT, либо дату, когда я создаю сборку, либо... Ну, все, что позволяет мне видеть погоду или нет, была поставлена последняя версия, желательно, чтобы мне не приходилось делать дополнительные шаги. так как я постоянно забываю обновлять "ручную" временную метку, которая сейчас в нем...





Вы можете обдумать и выбрать как минимум 2 стратегии
Замена в файле, как это (сделано|ожидается) сейчас
Как объясняется в главе Расширение ключевых слов в GitBook.
В файле .gitattributes вы можете установить фильтр для определенных путей, а затем настроить сценарии, которые будут обрабатывать файлы непосредственно перед их извлечением и непосредственно перед их размещением.
У меня есть некоторая «волшебная строка», расширяющаяся во все, что вы хотите иметь в WorkTree, и свернутая в исходную форму перед помещением обратно в репо, поэтому - не отображаются как изменения содержимого в истории git.
Кроме того, для всего, что вы хотите иметь, вывод git description (или любого другого генератора inique-id) может быть хорошим кандидатом, у вас должен быть хотя бы один тег в репо.
Внешний файл, автоматически появляющийся при операции git archive в целевом архиве с любым пользовательским содержимым внутри. Может быть включен в любой twig-шаблон или страницу
Нет кода скрипта для размытия | чистые фильтры, только файл(ы) с форматированием git log и обработкой расширения ключевых слов
Я рассмотрю решение Export-subst дальше. Судя по тому, что я читал, это действительно сработает. Спасибо, Ленивый Барсук!
Используете ли вы GitHub Actions для отправки обновлений на эти серверы? Если это так, вы можете автоматизировать значение с помощью этого, если нет, то вручную будет единственным способом, afaik.