[ Context ] В настоящее время я работаю в очень разнородной / низкотехнологичной среде. Большинство людей здесь используют различные IDE, и
- сможет следовать процедуре установки
xmllint
- не будет достаточно дисциплинированным, чтобы отформатировать свой код перед тем, как выдвинуть его на Gitlab
Давайте сосредоточимся на XML форматировании (мы работаем с довольно длинными xml conf файлами). Я задавался вопросом, является ли их способ форматировать отправленный код так, чтобы результат сохранялся в основной ветке исходных текстов проекта , а не в артефактах сборки .
format:
image: ruby:2.7.0-alpine3.11
script:
- apk add libxml2-utils
- find . -name "*.xml" -type f -exec xmllint --output '{}' --format '{}' \;
Суть в том, чтобы иметь возможность diff
без какого-либо беспорядочного форматирования ложных срабатываний. Мне известно о том, что это не является обычным использованием конвейеров и что для распространения изменений может потребоваться новый commit
| push
, выданный бегуном (см. этот прием ). Что вы посоветуете? Есть ли более прямой или элегантный способ реализовать это?