Bazaar - распределённая система управления версиями от Canonical Ltd.

Недавно занялся поиском подходящей системы контроля версий. Мотив довольно простой - при разработке различного рода проектов часто, а точнее всегда, приходится испытывать различные компоненты, плагины и пр. Порой для того чтобы реализовать нужный функционал приходится испытывать до десяти подобных программ. Уверенности в том что после удаления какой либо плагин не оставил мусора после себя нет. Еще хуже когда практикуем хаки, там последствия вообще могут быть плачевными  - все что нажито непосильным трудом пойдет прахом. С помощью системы управления версиями Bazaar мы сможем вернуть нашу систему (CMS, framework, CMF) в исходное состояние всего за пару секунд. Для установки Bazaar воспользуемся командной строкой:

sudo apt-get install bzr

После чего перейдем непосредственно к делу... Итак вы установили самую свежую версию своей любимой CMS на локальный сервер, провели локализацию, и комплекс действий по умлочанию которые не вызывают особых затруднений. Теперь вы хотите запомнить состояние системы чтобы в любой момент откатиться к данному состоянию. Нет ничего проще :) Инициализируем систему контроля версий (командная строка - в Ubunutu Терминал):

bzr init /var/www/my_project

Не забудьте указать свой путь! Следующим шагом переходим в папку с нашим проектом:

cd /var/www/my_project

Добавляем файлы в Bazaar

bzr add

Запоминаем состояние:

bzr commit -m "Комментируем что мы уже сделали с момента последней ревизии. Комменты могут быть на русском"

Готово. Теперь у нас есть сохраненное состояние которое принято называть ревизией. Посмотреть измененные файлы с момента последней ревизии можно с помощью команды:

bzr status

Хотите вернуть все как было, нет проблем:

bzr revert

Команда выше говорит о том чтобы вернуть все состояния файлов в состояние последней ревизии. Результат о проделаной работе - о ревизиях которые были проделаны можно посмотреть командой:

bzr log

Ну и наконец, что делать если ревизия оказалась ошибочной:

bzr uncommit

В большинстве случаев этих команд вполне достаточно для нормальной работы. Для любителей поэксперементировать или просто для тех у кого спецефические потребности -  список команд Bazaar

Comments