Обязательство может быть пугающей, вызывающей тревогу идеей для подавляющего процента людей. Когда мы думаем о концепции приверженности в контексте жизни в целом, мы склонны ассоциировать ее с постоянством: приверженность карьере, приверженность дому, отношениям, машине, ужину на День Благодарения… как только мы скажем «да». Хотя этот страх в основном воображаемый, мы, тем не менее, избегаем его и избегаем его, несмотря на то, что знаем, что они не исчезнут сами собой.

Обязательства — важная и неизбежная часть жизни, но мы здесь, чтобы поговорить о другом виде обязательств — git commit. И, к счастью для нас, в отличие от нашей повседневной жизни, коммиты в контексте git влекут за собой прямо противоположные последствия, а именно… ну, никакие.

Если мы думаем о рабочем процессе git как о видеоигре RPG (например, The Elder Scrolls V: Skyrim, Fallout), git commit можно рассматривать как функцию быстрого сохранения, что означает, что он просто действует как бесплатная контрольная точка, которая позволяет нам вернуться наши действия возвращаются в прошлое практически без каких-либо негативных последствий или последствий. Если бы это было особенностью жизни, держу пари, что мы все использовали бы это при каждом удобном случае.

Бесспорная лучшая практика git commit заключается в том, чтобы коммитить как можно раньше, как можно чаще и как можно больше. Полная остановка. Учитывая отсутствие минусов, действительно нет причин сопротивляться и не совершать.

Хотя для большинства из нас проблема скорее в забывчивости. На самом деле это простая проблема, и ее можно быстро обучить и укрепить, если мы просто приложим сознательные усилия, чтобы выработать привычку с помощью триггеров: в любое время, когда мы git init создаем новое репо, немедленно фиксируем его. Всякий раз, когда вы пишете новую функцию, совершайте коммит. Каждый раз, когда добавляется новая функция, обязательно фиксируйте ее. Собираетесь попробовать что-то, в чем вы не уверены, что это сработает? Совершить. Перед тем, как взять перерыв на обед, пообещайте. Вставать, чтобы пописать? Совершить. Подсоедините автомобильный аккумулятор к ушам, установите таймер на подачу разряда высокого напряжения каждые 2–4 минуты, чтобы подготовить себя к совершению (и одновременно заставить Ивана Павлова по-настоящему гордиться вами). Что бы ни работало.

Но прежде всего, я думаю, полезно помнить, что, хотя выполнение коммита git происходит быстро и безболезненно, потеря часов, дней или недель работы из-за того, что вы стали слишком самоуверенны и сильно напортачили, — это не так. Это случилось со мной и любым другим разработчиком, и это произойдет с вами.