К рефакторингу относятся изменения, которые не влияют на логический результат работы кода, а влияют только на его качество. Чтобы облегчить проведение ревью изменений, связанных с рефакторингом, нужно следовать следующим правилам:
-
Во время разбиения на коммиты заботиться о человеке, который будет выполнять ревью этих изменений. То есть проводить ревью изменений по каждому рефакторингу должно быть так же легко, как и выполнять их.
-
Не смешивать в коммитах изменения, которые влияют на логический результат работы кода, и рефакторинг.
-
Воздержаться от изменений, которых не требует реализация текущей бизнес-задачи. Вместо них следует создать отдельную задачу по рефакторингу.
- Если всё же в рамках бизнес-задачи вам необходимо переработать участок имеющегося кода, например, для его
переиспользования, то перед текстом коммита с этим изменением нужно добавить
(Реф)
.HRL-1 (Реф) Вынесен метод обработки процесса логина
- Если всё же в рамках бизнес-задачи вам необходимо переработать участок имеющегося кода, например, для его
переиспользования, то перед текстом коммита с этим изменением нужно добавить
-
Писать в сообщении коммита всё, что было изменено в рамках коммита. Если появляется желание оформить описание в виде списка изменений, то стоит задуматься над разбиением на отдельные коммиты.
-
"Правки после ревью" - это пример плохого сообщения коммита. Оно не отражают суть изменений и позволяет смешивать в одном коммите слишком много разнообразных изменений.
-
"Доработки оформления" - допустимое сообщение, если в нём содержатся только несколько однотипных правок, не меняющих ни логику кода, ни смысловое значение комментариев.
-
"Добавлены переносы строк" - точное и ясное сообщение коммита.
-
-
Любой рефакторинг, подразумевающий изменения сразу в нескольких участках/файлах кода, должен быть в отдельном коммите. Примеры изменений, которые точно должны быть в отдельных коммитах:
-
Перемещение файла или группы файлов из одной общей папки в другую общую папку средствами IDE.
-
Переименование метода, который используется в разных местах, средствами IDE.
-
Удаление сущностей средствами IDE.
-
Замена одной повторяющейся фразы в комментариях кода на другую с помощью "Replace all" или поиском по проекту.
HRL-1 Переименование метода someMethod В someNewFancyMethod.
HRL-1 Перемещение метода anotherMethod Метод перенесён из SomeService в AnotherService.
-