bash.im ithappens.me zadolba.li
12801

Система контроля нервов

Вот это номер! Вроде бы ресурс для айтишников, на который айтишники и пишут. Программисты в том числе. Но одни теряют результаты работы за день, а другие рекомендуют не сохраняться, а не то несколько действий не отменить. Удивлён. Очень сильно удивлён.

Есть такая штука — система контроля версий. Например, git. Делаете осмысленное, логически завершённое изменение — делаете коммит. Оставляете ещё осмысленный комментарий к коммиту. Отключили электричество, UPS не спас (мало ли, тоже не панацея) — не катастрофа. Включаемся — работа жива. Ну, может, последняя строка ушла в небытие. Всё же не убитый день работы.

Потоп, пожар, ураган, прямое попадание артиллерийского снаряда — и компьютера больше нет. Вы можете быть уверены, что с вами такого не случится? Всякое бывает. Берём другой компьютер, логинимся на Гитхабе — и вот оно, счастье: результаты работы в сохранности, можно продолжать, можно выполнить работу в срок.

Допустил ошибку, и теперь отовсюду выпиливать переменную? Тоже бывает. Кто не ошибается? Можно просто-напросто откатиться к определённому коммиту, в котором ошибки ещё не было. А можно и лучше поступить: экспериментальную фичу, в которой пока до конца не уверен, реализовывать в отдельной ветке, не трогая основную. Сделал, отладил, всё хорошо — объединяй ветки. Сделал, ужаснулся, понял, что получилось плохо — убей ветку, и дело с концом.

Кстати, большинство сред разработки, не только современных — с давних пор такое помню, — поддерживают работу с популярными системами контроля версий. Поддерживают прозрачно: достаточно кнопочку нажать, и всё будет сделано, при этом понятно, что произойдёт.

И вопрос, сохраняться или не сохраняться, вообще неактуален. Хорошего кода, коллеги!