В чем разница между git-хуками и конвейерами Azure DevOps? - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь понять git hooks и конвейеры Azure DevOp с нуля. Мне нужно понять разницу между обоими. Зачем нам нужно одно над другим? Моя тестовая среда - репозиторий Unix и Azure DevOps на сервере.

Ответы [ 2 ]

0 голосов
/ 21 мая 2019

Хиты Git предназначены в первую очередь для запуска на одном компьютере, либо на компьютере разработчика, либо в некоторых случаях на удаленном сервере. Возможность использования Git-хуков на вашем хостинг-провайдере Git зависит от провайдера. Azure Pipelines - это система непрерывной интеграции (CI), которая может создавать, тестировать и развертывать ваш код.

Хиты Git обычно полезны, если вы хотите выполнить простую операцию на локальном компьютере, и их обычно легко обойти, в то время как системы CI предназначены для автоматического запуска на многих или на всех коммитах и, возможно, на различных платформах. Системы CI также могут безопасно хранить секреты, которые используются для автоматического доступа к системам, к которым вы не хотели бы, чтобы каждый разработчик имел доступ.

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

0 голосов
/ 21 мая 2019

Проще говоря, git hooks подобны триггерам для базы данных. Они реагируют на события, происходящие в репозитории исходного кода git, и исполняются в сценариях на основе этих событий. Как прямо перед проверкой кода, сразу после проверки кода и т. Д. Конвейеры DevOps Azure не имеют ничего общего с git hooks. Как то, что было сказано: яблоки и апельсины. Я не знаю, где вы их связали друг с другом. Git - это репозиторий исходного кода, а DevOps Azure поддерживает Git. Azure DevOps - это ПЛАТФОРМА, поэтому представляет собой комбинацию многих инструментов под эгидой Azure / Azure DevOps. Часть "Pipeline" - это всего лишь маркетинговый трюк, который мы, ребята из DevOps, делали годами. Это всего лишь процесс получения кода от разработчиков и запуска его через процесс компиляции кода, проведения некоторого модульного тестирования, упаковки, выполнения ряда автоматических тестов, оценки этих тестов, прохождения различных сред, получения одобрения, и в конечном итоге в какой-то конечной среде (обычно производство). Поскольку это обычно (но не всегда) последовательный процесс, который звучит как конвейер (который был представлен в Jenkins / Hudson), и люди начали вызывать процессы, подобные этим конвейерам. Microsoft просто согласилась с жаргоном, присоединилась к соглашению об именах и добавила к названию мировой PIPELINE. Теперь у нас есть Конвейеры сборки и Конвейеры выпуска, которые раньше назывались Определения сборки и Определения релиза (которые я до сих пор так называю).

Посмотрите видео на YouTube, чтобы объяснить это более подробно и заполнить пробелы. Это просто чтобы указать вам правильное общее направление.

...