Философия DevOps. Искусство управления IT (Дэниелс, Дэвис) - страница 168

В следующем списке приводится дополнительная терминология, относящаяся к контролю версий.

Фиксация

Фиксация – это последовательность действий по включению изменений, внесенных в файлы под управлением контроля версий.

Конфликты

Конфликт имеет место в том случае, когда внесены два очень похожих изменения и система контроля версий не может определить, какое из этих изменений является корректным. В большинстве случаев система контроля версий обеспечивает способ просмотра и выбора желательных изменений для разрешения конфликтов.

Запрос на включение кода

Запрос на включение кода (pull request) – это механизм, который посылает разработчику сигнал о том, что его вклад готов к просмотру и слиянию с основной ветвью.

Избирательный подход

Избирательный подход – это применение определенных подтверждений из одной отрасли в другой отрасли. Этот подход полезен при необходимости выбора определенных изменений запроса на включение кода.


Управление артефактами

Артефакт – это результат выполнения какого-либо шага в процессе разработки программного обеспечения. Артефакты хранятся в хранилище. Можно выбрать как простое, так и более сложное полнофункциональное хранилище. В последнем случае нужно оценить стоимость поддержки дополнительных услуг и проблем с обеспечением безопасности.

Хранилище артефактов должно быть:

• защищенным;

• доверенным;

• стабильным;

• доступным;

• версионированным.

При наличии хранилища артефактов появляется возможность статической трактовки зависимостей. Вы можете хранить версионированную общую библиотеку в качестве артефакта отдельно от системы контроля версий программного обеспечения. Это позволит всем командам использовать одну и ту же общую библиотеку. Вам придется создавать двоичный файл всего лишь один раз (даже если вы можете построить его повторно). В результате один и тот же двоичный файл используется на протяжении циклов испытаний и продвижений между сборками, что существенно упрощает работу.

В хранилище можно хранить артефакты в соответствии со способом их использования. В некоторых системах можно одновременно хранить лишь единственную версию пакета. Это может привести к появлению проблем при описании истории пакетов. Чтобы не допустить появления подобных проблем, нужно увеличить фактор дублирования хранилища пакетов. Это позволит поддерживать отдельное хранилище пакетов для каждой среды в рабочем потоке.

На ранних стадиях эволюции организация может не соответствовать определенным требованиям безопасности. Но по мере роста и появления линий продуктов ситуация может измениться. Благодаря наличию выделенного локального хранилища артефактов обеспечивается более плавный переход на пути к достижению соответствия вышеупомянутым требованиям.