Я бы хотел создать надежный путь для разработки программного обеспечения. это
означает, что каждое изменение в коде должно быть подписано автором
и один рецензент, прежде чем быть принятым. Эти подписи для
изменения должны быть проверены во время выпуска, или должны быть некоторые
другие способы убедиться, что хранилище не может быть
подделка или добавлены дополнительные изменения.
Система контроля версий, которую я ожидаю использовать для этого,
мерзавец, но другие варианты тоже принимаются. Подписание может быть через
GnuPG или SSL сертификаты.
Рабочий процесс, который я думаю, будет примерно:
- Текущий проверенный ствол разветвлен
- Изменения разрабатываются в ветке одним или несколькими разработчиками
- Один или несколько разработчиков подписывают изменения, внесенные веткой
- Рецензент проверяет и проверяет изменения
- Рецензент подписывает изменения, внесенные веткой
- Ветвь "объединена" с текущей проверенной магистралью
Слияние не обязательно должно быть защищено от ошибок, например, что оно не было просмотрено
изменения должны были бы быть объединяемыми с магистралью - только это раньше
релиз, должен быть способ проверить, есть ли
непросмотренные (неподписанные) изменения в багажнике. И вообще, вмешательство не нужно предотвращать, только обнаруживать.
Мне бы хотелось краткое руководство о том, как это настроить и как выполняется каждая операция. Как только я получу несколько указателей, я могу сам разобраться в специфике.
Кроме того, я уже знаю технически о 'git tag -s', но я не уверен, как применить его к этой конкретной проблеме.