Подтвердить что ты не робот

Программное обеспечение непрерывной интеграции с поддержкой Git и закрытой регистрации?

Я смотрел на TFS, TeamCity, Jenkins и Bamboo, и, честно говоря, ни один из них не был убедителен. Я хочу

  • Хорошая отчетность
  • Хорошая поддержка Git
  • Закрытая/отложенная регистрация/фиксация
  • Интеграция с продуктами Visual Studio и/или Atlassian
  • Решение не должно требовать от обычных разработчиков использовать командную строку или терминал (Git Extensions FTW)

TFS - это беспорядок для настройки и работы в целом, он явно не поддерживает Git, но у него есть закрытые проверки (хотя кажется, что он излишне проверяет весь проект каждый раз, и поэтому он медленный?). Также действительно недостает в отделе отчетности.

TeamCity имеет очень плохую закрытую поддержку регистрации, когда дело доходит до Git, в противном случае это мой любимый. Поддерживает много вещей из коробки.

Отчеты в Jenkins плохие (исторические тенденции и т.д.), похоже, что у них больше ошибок, чем у других, и качество плагина может быть страшным. С другой стороны, он бесплатный и универсальный. Как поддерживается поддержка Git и закрытых проверок?

У бамбука, очевидно, есть отличная атласская интеграция, но нет поддержки закрытых регистраций.: (

Любые советы?

4b9b3361

Ответ 1

@arex1337 Все приведенные здесь ответы имеют свои достоинства. Опыт говорит нам, что ни один проект/организация никогда не доволен одним поставщиком для всех своих потребностей. Возможно, у вас, возможно, есть базовый инструмент CI с сочетанием плагинов/дополнений от других поставщиков, которые имеют свои собственные USP.


В качестве примера:

Jenkins как базовый инструмент. @Aura и @sti уже упоминали все хорошие вещи; в то время как мы можем согласиться, что разработка плагинов немного неконтролируема, их все еще много, которые обеспечивают отличное качество. Главное, чтобы сообщество было активным, действительно гибким (у них обычно есть 1 выпуск в неделю), и любые проблемы, которые могут возникнуть, легко решить. Дополнительным преимуществом является легкая разработка плагинов, поэтому, если нажатие нажимает, вы можете написать свой собственный.

@Mark O'Connor работает с предложением SONAR. Один из лучших, который вы можете получить с точки зрения отчетности и получать интересные отчеты. И @Thomas очистил воздух от закрытых коммитов


В пользу Дженкинса:

Хорошая отчетность. Вы получили ее с помощью SONAR + Jenkins

Хорошая поддержка Git - Дженкинс дает, что

Закрытая/отложенная регистрация/фиксация - Плагин Jenkins Gerrit

Интеграция с продуктами Visual Studio и/или Atlassian. Вики-страница Jenkins работает на Atlassian. Вот список уже проведенных там интеграций

Clover, Crowd, Confluence, JIRA: Плагин1 Плагин2 Плагин3

Не нужно, чтобы обычные разработчики использовали CLI - Дженкинс не


Теперь вы можете заменить Jenkins на Bamboo в приведенном выше примере и приблизиться к тому, что вы хотите. Но на данный момент вам кажется, что лучше всего Дженкинс.

TFS и TeamCity: в лиге Дженкинса и Бамбука еще нет.

Ответ 2

  • Verigreen - это серверное решение для проверки git коммитов, которое каким-то образом похоже на Gated Check in of TFS.
    Он будет толкать только те коммиты в защищенную ветку, которые успешно построены.
  • Travis - это служба CI, используемая для создания и тестирования вашего приложения.

Ответ 3

Вы посмотрели Gerrit?

Он основан на Git, имеет стробированные коммиты (по крайней мере, если я правильно понимаю, что вы подразумеваете под термином gated commits) и имеет действительно хорошие функции обзора.

Вы можете интегрировать Gerrit в Jenkins с этот плагин, но я не уверен в Atlassian и Visual Studio.

Ответ 4

Хороший вопрос! Широко широкий. Невозможно сравнить все продукты CI.

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

Просматривая свой вопрос, первое, что вы хотите, это хорошая отчетность.

Дженкинс может использоваться для очень интерактивной отчетности. Существует несколько плагинов, которые позволяют Jenkins настраивать формат отчета. Вы также можете определить HTML-шаблон, и затем вы можете получить индивидуальный, правильно отформатированный, охватывающий почти все аспекты вашего требования к отчету. Это также можно отправить по электронной почте заинтересованным лицам, а также коммиттерам и преступникам!

Далее вам нужна хорошая поддержка git: Jenkins предоставляет отличную поддержку git. Доступно несколько плагинов для git (пример Github Plugin). Поскольку вы боитесь, что у него больше ошибок, а качество плагина может быть страшным, но тогда нет программного обеспечения без ошибок!. Недавно Jenkins выпустил стабильную версию 1.478, в которой нет многих предыдущих ошибок (я использую 1.401 и Я не обнаружил ни одной ошибки за последние 10 месяцев). Я считаю, что Дженкинс постоянно совершенствуется, и постоянно развиваются новые плагины, расширяющие его использование и объем. Если ваш проект требует расширения в будущем, тогда Дженкинс может быть полезен.

Закрытая/отложенная регистрация: Насколько я знаю, Дженкинс можно использовать для задержек с закрытой/отложенной проверкой/фиксацией (не уверен, но я буду держать вас в курсе, если я столкнулся с любым таким Информация). | Сделал немного исследований по этому вопросу, и я понял, что это свойство SVN, и это не связано с Jenkins, поэтому, если ваш SVN поддерживает закрытую/задержанную регистрацию, вам не нужно беспокоиться об этом, поскольку Дженкинс просто среда для доступа к ней.

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

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

Jenkins можно легко интегрировать с продуктами Atlassian (несколько плагинов доступны для интеграции различных продуктов Atlassian в Jenkins. Пример JIRA Plugin) (еще не знаю о Visual Studio).

Ответ 5

Плагин Jenkins Git может поддерживать стробированные коммиты. Проверьте описание на Git плагине wiki page

Какую отчетность вы ищете? Дженкинс имеет различные каналы RSS и исторические тенденции. Есть несколько плагинов, которые добавляют некоторые отчеты. Кроме того, есть Plot plugin, который упрощает (иш) создание собственных графиков. Или, возможно, отчеты из плагина Warnings - это то, что вы ищете.

Ответ 6

Я использую TFS 2012 Express. Я никогда не использовал предыдущие версии TFS, поскольку они смотрели на меня как на беспорядок для настройки и администрирования, но они значительно улучшили эту последнюю версию. См. Презентацию на http://channel9.msdn.com/Events/TechEd/Europe/2012/DEV346

Ответ 7

В последнее время Chiming с этим, но размещенная служба TFS отлично подходит для использования с точки зрения настройки, и теперь она поддерживает GIT. Если вы перейдете с решением TFS по месту и подключите его к SQL Reporting Services, вы получите больше отчетов, чем вы можете себе представить. Если вы отправитесь на целый свист и добавите в SharePoint, вы также получите веб-сайты на основе проекта.

Если вы идете с TFS, я думаю, вы бы изо всех сил пытались найти что-либо, что может сравниться, поскольку каждая часть является основным продуктом. Создание ошибок в Excel и продвижение их к узлу TFS - одна из самых больших вещей. Нет более привлекательного веб-интерфейса. и вы можете планировать с MS Project тоже, если это ваша сумка. Во всех случаях у вас будет Office (Project, Excel) для подробного создания и управления задачами, SharePoint для Wikis, отчетов SQL для ваших отчетов (сбой кода, неудачные подсчеты сборки и т.д.) И TFS (с помощью GIT) для управления исходным кодом и клей для других частей.

Конечно, это означает, что вы 100% в экосистеме MS, и это само по себе может быть очень страшным фактором для многих. Если вы просто катитесь с ударами, хотя я нашел, что это здорово. Большая часть негатива основана на старых системах и общем восприятии MS.