Как получить историю версий Git, встроенную в исходный код?
В SO есть несколько вопросов, связанных с тем, как заставить Git автоматически добавлять детали изменения файла (например, автор, дата, номер версии, краткое описание изменения и т. Д.), Используя ключевые слова / теги / хэши того же типа, что и в RCS/CVS. и большинство других систем. Не было четких ответов, как это сделать - в основном были предупреждения не делать этого.
Я понимаю, что такую же информацию можно получить, используя собственные методы истории Git, но в этой реальной жизни, когда программисты привыкли к старым методам, это просто облегчает жизнь, когда история версий файла внедряется в заголовок файла.
Вопрос: как информация об изменениях может быть автоматически вставлена в заголовок файла на этапе фиксации?
1 ответ
Я до сих пор не понимаю, почему (с точки зрения управления требованиями) эта функция не была указана в Git.
Потому что вы должны получать эту информацию от самого Git, а не от содержимого файла (управляется Git)
При этом я видел альтернативные подходы, например, при генерации файла будут все метаданные Git, которые вам нужны (выполненные после всех коммитов), и упакованные в результат, что означает:
- не исходники (управляемые Git)
- но конечный результат произведен компиляцией источника.
Таким образом, ваша окончательная программа все еще может получить доступ к этим метаданным во время выполнения.