Где подключить скрипт соглашения о кодировании?

При работе в больших группах часто используются инструменты для стилизации кода, чтобы обеспечить соблюдение правил кодирования. Проблема не в том, чтобы найти такой инструмент. Это больше вопрос о том, когда вы запускаете этот инструмент? Когда вы запускаете этот инструмент (например, astyle)? Я работал в проектах, которые используют первые два подхода.

В отдельном скрипте

  • Не может мешать другим инструментам.
  • Пользователь имеет контроль над выполнением сценария.
  • Пользователь не обязан использовать инструмент.

При строительстве

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

В качестве крючка для предварительной фиксации

  • Гарантирует, что только соответствующий код будет зафиксирован и передан.
  • Ошибки в инструменте не тестируются в хранилище.

По-другому я не знаю …

2

Решение

Вы можете настроить элементы управления в pre-commit крюк (в мерзавце), но:

  • Вы должны распространять этот крючок
  • можно обойти это (git commit --no-verify)

Так что в DVCS лучшее место в pre-receive зацепить на стороне сервера, то есть на сервере, на котором размещены «благословенные» репозитории (те, которые используются всеми)

Вы можете использовать его для применения всех видов политик:

  • политики управления версиями (см. этот смысл который запрещает удаление веток без /, запрещает не ускоренную перемотку на ветви без /запрещает удаление тегов без /, запрещает добавление аннотированных тегов)
  • запуск внешних процессов (например, модульные тесты)
5

Другие решения


По вопросам рекламы [email protected]