Сейчас мы используем Perforce для контроля версий. У него есть удобная функция строго возрастающего числа изменений, которое мы можем использовать для ссылки на сборки, например "вы получите исправление, если ваша сборка не менее 44902".
Я хотел бы переключиться на использование распределенной системы (возможно, git), чтобы упростить работу и работу из дома. (Оба из них вполне возможны с Perforce, но рабочий процесс git имеет некоторые преимущества.) Поэтому, хотя "приток развития" будет распространен и не будет ссылаться на общую последовательность ревизий, мы все равно сохраним master git repo что все изменения должны будут загружаться до создания сборки.
Какой лучший способ сохранить строго растущие идентификаторы сборки? Самый простой способ, о котором я могу думать, - это иметь какой-то крюк после фиксации, который срабатывает всякий раз, когда мастер-репо обновляется, и он регистрирует (хэш) нового древовидного объекта (или фиксирует объект? Я новичок в git) с централизованной базой данных, которая выдает идентификаторы. (Я говорю "база данных", но я бы, вероятно, сделал это с тегами git и просто посмотрел на следующий доступный номер тега или что-то в этом роде. Таким образом, "база данных" действительно была бы .git/refs/tags/build-id/.)
Это работоспособно, но мне интересно, есть ли более простой или уже реализованный или стандартный/ "лучший способ" для этого.