Это хорошая практика для фиксации нескольких файлов одновременно? - PullRequest
1 голос
/ 25 июня 2019

Я новый пользователь PyCharm, и недавно начал использовать его инструмент VCS (система контроля версий).Всякий раз, когда я хочу зафиксировать изменения, которые я внес в проект, VCS по умолчанию открывает окно со всеми изменениями, которые я сделал для всех файлов в этом проекте, и предлагает мне зафиксировать все эти изменения в одной фиксации.Это хорошая практика?

Ответы [ 3 ]

2 голосов
/ 25 июня 2019

Коммит должен быть «атомарным», то есть он должен содержать группу связанных изменений, которые предназначены для совместной работы. Сколько файлов касается, не имеет значения. Чего не следует делать, так это

1 / зафиксировать несвязанные изменения вместе (т. Е. Группу изменений, реализующих новую функцию, и одно изменение, исправляющее ошибку) - потому что тогда вы применяете только одно исправление (chery-pick) к другой ветви,

2 / зафиксировать только часть связанных изменений (т. Е. Вы изменили прототип функции в данном файле, но не исправили все вызовы этих функций), что привело к поломке базы кода.

1 голос
/ 25 июня 2019

Я бы предложил следующее: каждый из ваших коммитов должен представлять новое изменение в общей идее кода, независимо от распределения коммитов среди файлов. Например, если вы изменяете определенную небольшую функцию в своей программе и это приводит к изменению нескольких файлов для одной и той же цели, я сохраню ее с одним и тем же коммитом. Если вы добавляете несколько функций в одном файле, сохраняйте их как отдельные коммиты.

Я бы меньше беспокоился о количестве файлов, на которые вы влияете при фиксации, и больше об общей функциональности / идее кода.

0 голосов
/ 25 июня 2019

Да, это нормально. Когда вы смотрите на другие репозитории, то есть на GitHub , вы видите, что они тоже это делают. Хорошим примером является CPython репозиторий , где коммиты иногда меняются десять файлов .

...