#github
#гитхаб
Вопрос:
Технические писатели собираются редактировать текст в файлах JSON через github в нашем проекте. Поскольку они никогда не использовали IDE (и в этом нет необходимости), мы подумываем об использовании веб-интерфейса github. У нас есть CI, но было бы очень здорово, если бы мы могли выполнить проверку до завершения фиксации.
Пример:
Шаг 1: tech writer открывает в github файл JSON
Шаг 2: tech writer обновляет строку
Шаг 3: tech writer нажимает кнопку, чтобы сохранить изменения
Шаг 4: Выполняется какой-нибудь простой скрипт и проверяет содержимое этого конкретного файла.
Шаг 5a: все в порядке? Затем завершите фиксацию
Шаг 5b: произошла синтаксическая ошибка. Покажите сообщение об ошибке техническому специалисту.
Возможно ли это?
Ответ №1:
GitHub не предоставляет эту функциональность, и вряд ли кто-либо еще это делает.
Чтобы сделать это, GitHub должен иметь на своих серверах открытый репозиторий и позволять запускать произвольный скрипт. Пустые репозитории упакованы и могут быть намного меньше, чем полное рабочее дерево, и даже если бы у GitHub было рабочее дерево, оно не обязательно было бы в вашей ветке, что задержало бы процесс. Запуск произвольного скрипта представляет угрозу безопасности, и не гарантируется, что ваш скрипт будет выполняться достаточно быстро, чтобы процесс завершился за разумное время. Ваш скрипт также должен запускаться через API, который имеет жесткие ограничения по времени отклика.
Есть GitHub Actions, который позволяет вам это делать, но это не обеспечивает проверку в реальном времени, как вы хотите. Он надлежащим образом изолирован и используется один раз, поэтому вы можете использовать произвольные сценарии.
Я должен отметить, что Git также не обеспечивает проверку в режиме реального времени здесь: лучшее, что он может сделать, это pre-commit
перехваты, чтобы предотвратить внесение вами неправильных изменений (если вы решили их включить).