Конечная цель: полностью ликвидировать вопрос форматирования кода в проекте таким образом, чтобы каждый член команды:
- писал код с таким форматированием, как ему нравится (табы/пробелы, пустые строки, порядок методов в классах, многострочные комментарии etc.),
- видел код, написанный другими в соответствии со своими предпочтениями
Способ реализации: написать приложение со следующими коммандами:
- Первый запуск, конвертация форматированного кода в минимизированный (без пробелов/табов, методы отсортированы алфавитно по имени и типам параметров)
- Начало работы, конвертация минимизированного кода из /src в форматированный в /src.tmp с учетом настроек (например, R#)
- Конец работы, конвертация /src.tmp в минимизированный /src
Соответстветнно, пункт 3 можно выполнять постоянно после каждого изменения кода.
Вопрос: существует ли уже готовое решение?
P.S. также приложение можно расширить для минимизации .csproj файлов, исключая оттуда очевидные инклюды файлов
с целью избавления от конфликтов при мердже и добавляя туда информацию об исключениях (например, изначально MyClass1.cs, ... ,MyClass99.cs включены в .csproj, а OtherClass1.cs, ... , OtherClass99.cs не влючены - при конвертации информация о MyClass1 ... 99 будет убрана, а информация об игнорировании OtherClass1 ... 99 будет добавлена).