1

Вот общий сценарий:Как я могу предупредить разработчиков, что им нужно запускать определенные команды после того, как они вытащит мой commit (в управлении версиями/git)?

Вы работаете над проектом (таким как, но необязательно, веб-приложение) с другими разработчиками.

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

  2. Том понимает, что мы можем ускорить наши запросы к базе данных, добавив индекс и денормализуя бит данных. Он добавляет миграции и проверяет его.

В любом случае, когда другие разработчики git pull или иным образом обновить свою среду разработки, то, скорее всего, сломать, если они не запускать npm install/bundle/cocoapods chocolateygoodness/bower feathernest или python manage.py migrate/bundle exec rake migrate или что-то еще, и это не всегда очевидно, что это так. На самом деле другой разработчик может не действительно быть разработчиком вообще, но, возможно, дизайнером, который украшает cheezus из нашего интерфейса.

Что бы я действительно нравится для любого другого разработчика, при pull ИНГ фиксации в вопросе, чтобы увидеть что-то вроде этого:

Updated! 

Please note you MUST RUN this command before continuing. 
(Stop your server first, if applicable) 

$ ./magical_command_here --with-args 

В качестве альтернативы, было бы удивительно, если работает git status может что-то вроде:

On branch master 
Your branch is up-to-date with 'origin/master'. 
nothing to commit, working directory clean 
Migrations need to be run. Please execute `database_migration_command` 

У кого есть решения этой проблемы?

ответ

4

Это действительно не проблема VCS. Это должно управляться при сборке. Решения включают в себя, как часть источника, скрипт сборки, который позаботится об этом. Если вы добавите зависимость, которая еще не выполняется скриптом сборки, обновите скрипт сборки и включите его в commit. Сотрудники должны знать, чтобы запустить скрипт сборки как часть цикла разработки.

 Смежные вопросы

  • Нет связанных вопросов^_^