Форматирование кода Clojure в команде с несколькими редакторами
По мере роста нашей команды Clojure мы видим все больше и больше редакторов. Это вызывает много посторонних изменений.
Больше всего меня беспокоит не то, как отформатирован код - все редакторы создают читаемый код - это больше о git blame
становится совершенно непригодным для использования, поскольку каждая строка в проекте раздувается из-за неинтересных изменений в форматировании.
В решении этой проблемы два главных претендента сейчас должны использовать cljfmt
до фиксации и / или сценарий, который удаляет изменения пробелов из набора изменений git.
Как все остальные справляются с этим?
2 ответа
Вина Git становится совершенно непригодной, поскольку каждая строка в проекте раздувается из-за неинтересных изменений в форматировании.
Мало того, это также может привести к ненужным конфликтам. Использование инструмента форматирования (cljfmt
как вы упомянули) в хуке pre-commit может помочь уменьшить эту проблему. Хук предварительной фиксации можно сделать активным (переформатировать файлы и зафиксировать) или пассивным (прервать фиксацию, если возникла проблема с форматированием).
Также рассмотрите возможность использования EditorConfig, с помощью которого вы можете настроить правила форматирования, а затем отслеживать файл конфигурации вместе с проектом. Некоторые IDE и редакторы имеют встроенную поддержку EditorConfig, многие другие имеют плагин.
Я также использую это, чтобы дополнить cljfmt: https://github.com/gfredericks/how-to-ns