2012-06-22 2 views
3

Вот шаги, которые я всегда следую перед проверкой в ​​коде,Не нарушайте сборку - как?

  1. Получить последние новости от СВНА

  2. Объединить конфликтные файлы

  3. Построить

  4. Выполнить мои тесты

  5. Заезд

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

Вот некоторые из полезных статей, которые я прочитал по этой теме.

Любые советы о том, как абсолютно убедиться, что я не нарушаю строить?

+1

Несмотря на все ваши усилия и все ваши меры предосторожности, всегда есть шанс, что вы можете что-то забыть и повредить сборку. Точно так же, как есть вероятность того, что система будет скомпрометирована, несмотря на высокий уровень безопасности. Плагин для выпуска maven имеет цель «подготовить», которая (помимо прочего) проверяет, были ли вы исправлены все ваши локальные изменения (даже файлы, которые вы еще не добавили под своим контролем версий). Я не уверен, что это подойдет вашим потребностям. Я знаю, что это изменит как минимум два файла, и вам нужно будет иметь в виду. – carlspring

ответ

2

В Maven нет такого механизма. Это ваш бизнес, что вы делаете после сборки и что вы регистрируетесь. Даже с помощью CI вы можете делать все, что хотите, вы просто знаете, что рано сломаете сборку. Это не мешает вам поступать неправильно, это просто обеспечивает быструю обратную связь. Тем не менее, когда вы пытаетесь сделать выпуск с Maven (используя maven-release-plugin), он затем проверяет, есть ли какие-то неуправляемые изменения, поэтому вы можете быть уверены, что сборка, связанная с выпуском, в порядке, и это действительно важно. Но с обычной сборкой это не так важно, на мой взгляд.

+0

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

+0

Ну, в этом случае просто установите CI-сервер. Если это проект с открытым исходным кодом, вы можете бесплатно получить хостинг Jenkins для своего проекта github с сайта cloudbees.com. – carlspring

+0

Итак, введите Continues Integration. Даже на вашем локальном хосте, если вы не можете сделать это в инфраструктуре своего проекта (но на самом деле это всего лишь несколько минут). Как я уже сказал, я не считаю, что есть инструмент, который заставляет вас проверять все, что нужно для успешной сборки. Получите Jenkins, настройте его за несколько минут и настройте так, чтобы он использовал свое собственное рабочее пространство SVN. –

2

Несмотря на все это, есть еще шанс, что я мог бы сломать строить, если есть какие-либо локальные изменения, которые я, возможно, пропустили проверку в

Вы можете проверить работу копировать по команде svn status после совершения. Это уменьшит вероятность забыть что-то добавить и зафиксировать в репозитории.

2

Существует не простой способ убедиться. Вы всегда можете ошибиться при совершении. Эти правила помогают свести к минимуму риск

  • Сделайте привычку «всегда совершать все», I.e. не сохраняйте локальные изменения и никогда не работайте над двумя задачами в одной рабочей копии.

  • Перед тем, как совершить, проверьте наличие неверсированных файлов.

  • Сохраняйте процесс сборки идентичным на сервере сборки и машинах-разработчиках.

+0

+1 хороший ответ, спасибо – gresdiplitude