Управление исходными текстами при отсутствии системы контроля версий


Управление исходными текстами программ при отсутствии VCS (version control system, кто не в курсе — а я был не в курсе лет десять, и ничего, жили как-то) очень похоже на работу с VCS, только при отсутствии таковой.

Это потому, что собственно базу данных VCS (я постоянно сбиваюсь на CVS, потому что предпочитаю очень старые и очень тупые средства, коих, однако же, для работы более чем достаточно. Более чем) также следует бэкапить и хранить, причем это далеко не так удобно, как хранить код в архиве. База-то большая, а формат малопрозрачный, по крайней мере для того, кто в нем разобраться не пытался. Но зачем?

Проблема из разряда «диск не читается» возникает регулярно, если вы часто восстанавливаете данные — для ремонта софта или там для поиска старых файлов, например. Хорошо еще, что дубовая CVS на линуксе за несколько лет эксплуатации несколькими юзерами ни разу не потребовала разархивации из копии, а то как ее разархивировать-то?

Ну, неважно. Вернемся к теме — как управлять версиями. В жизни есть, почитай, единственная конкретизация этой проблемы — как бэкапить софт.

Бэкапить архивированием. Каталоги с кодом. Хорошо положить в них проектную документацию (хоть это и грузило в VCS нетекстовые файлы), и еще лучше — пару-тройку бэкапов базы данных разработчиков, скрипты создания свежих полуготовых баз и так далее.

Архивировать следует не ручками, а скриптом, который припишет к имени архива дату и время с точностью до минут.

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

Все это не отменяет управления версиями на уровне кода программ. Внося изменения в код, вы обязаны написать, кто, когда и почему изменил конкретный закомментированный кусок кода на новый. Где начало и конец старого и нового. Помечайте как удобно, лишь бы единообразно. Стирать большие ненужные куски кода вы больше не можете — или ставьте VCS, хоть локально. Пожалуй, так автору и придется делать в конце концов.

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

Еще по теме

This entry was posted on Пятница, ноября 23, 2012 at 09:30 and is filed under программное обеспечение, разработка. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply

You must be logged in to post a comment.