Python (ПИТОН) \ Bazaar

Руководство по Django Bazaar

Использование bazaar в реальной жизни на Win32

Автор: L.A.

Установка bazaar

Необходимо установить следующие компоненты:
  • bzr
  • pyWin32
  • cElementTree (хз)
  • elementtree (хз)
  • paramiko
  • pyCrypto
  • pyCurl
Если вы захотите впоследствии использовать плагины gdiff и gannotate, необходимо будет установить:
  • gtk+
  • pycairo
  • pygtk

Установка плагинов

Нет необходимости устанавливать плагины, достаточно их просто скопировать в одну папку, например, C:\Program Files\bzrplugins.

Переменные среды

Надо установить следующие переменные среды:
  • BZRENCODING кодировка исходных файлов (обычно cp1251)
  • BZREMAIL в значение вида "Vasily Sulatskov <redvasily@mail.ru>". Это необходимо для указания автора при записи патча в репозиторий (данная переменная должна быть установлена только для пользователя, а не глобально).
  • BZR_PLUGIN_PATH путь к плагинам (например, C:\Soft\bzrplugins)

"Пляски с бубном"

Теперь нужно проверить, все ли правильно работает. В консоли Windows выполнить команду:
bzr
Если bazaar не стартовал, необходимо проверить путь, указанный в файле bzr.bat в папке Scripts (обычно, C:\Python24\Script). Необходимо указать правильный путь к файлу bzr, который находится в той же папке (в нашем случае, C:\Python24\Scripts\bzr). Кроме того, в переменую среды Path при этом необходимо добавить путь к файлу bzr.bat (в нашем случае, C:\Python24\Scripts).

Настройка SSH (опционально)

Рекомендуется настроить "passwordless login". Для этого необходимо установить клиент SSH сборки OpenSSH (setupssh.exe). Кроме того, для этого необходимо наличие отдельного пользователя Windows (для правильной работы с ключами SSH).

Ахтунг!

Имя пользователя должно быть записано латинскими буквами и не содержать пробелов.

Рекомендуется добавить сервер bisrc (81.89.80.58) в файл hosts (C:\WINDOWS\system32\drivers\etc\hosts). Для этого в указанный файл необходимо добавить строку:

81.89.80.58     bisrc
У вас должен быть пользователь на сервере bisrc (81.89.80.58). Пользователя может создать тот, кто уже имеет пользователя на данном сервере. Если у вас уже есть пользователь на bisrc, попробуйте попытаться установить соединение с сервером:
ssh -l user -p 10022 bisrc
после чего необходимо подтвердить подключение и ввести ваш пароль. Для завершения соединения используется команда:
[user@bisrc ~]$ exit
Далее необходимо сгенерировать ключ. Для этого необходимо запустить в установочной директории OpenSSH, в папке bin файл ssh-keygen со следующими опциями:
ssh-keygen -t dsa
Файл ключа и passphrase можно не указывать (оставлять пустыми). Переходим в папку со сгенерированными ключами C:\Documents and Settings\user\.ssh и "заливаем" публичный ключ на сервер:
scp -P 10022 id_dsa.pub user@bisrc:id_dsa.pub
Затем устанавливаем соединение с сервером:
ssh -l user -p 10022 bisrc
Командой ls проверяем наличие файла ключа id_dsa.pub:
[user@bisrc ~]$ ls -a
Копируем этот файл в папку .ssh:
[user@bisrc ~]$ cp id_dsa.pub .ssh
Переходим в папку .ssh:
[user@bisrc ~]$ cd .ssh
и дописываем ключ в конец файла authorized_keys:
[user@bisrc ~/.ssh]$ cat id_dsa.pub >> authorized_keys

Начало работы с bazaar

Не забывайте сменить кодовую страницу в консоли:
chcp 1251
Основные команды bazaar:
  • bzr init инициализация репозитория
  • bzr status проверка состояния репозитория
  • bzr add file добавление файла (папки) file в репозиторий
  • bzr diff показывает сделанные изменения
  • bzr commit запись изменений (создание ревизии)
  • bzr log список всех ревизий
Для того, чтобы увидеть только n последних ревизий, используйте команду:
bzr log -r -n..
Для, того, чтобы "вытянуть" изменения из удаленного репозитория (central) в текущий, используется команда:
bzr pull sftp://user@bisrc:10022/projects/project/central
Чтобы запомнить расположение удаленного репозитория, рекомендуется использовать опцию --remember:
bzr pull sftp://user@bisrc:10022/projects/project/central --remember
Теперь можно написать просто:
bzr pull
Для отправки изменений в удаленный репозиторий используется команда:
bzr push sftp://user@bisrc:10022/projects/project/central --remember
Или, после использования опции --remember:
bzr push
Самая полезная команда:
bzr help

Процедура работы с kdiff3

Для на чала необходимо установить kdiff3. В переменную среды Path нужно добавить путь к файлу kdiff3.exe. Теперь для вызова kdiff3 из репозитория необходимо выполнить команду:
bzr diff --using kdiff3.exe
Рекомендуется также упростить использование kdiff3. В папке C:\Documents and Settings\user\Application Data\bazaar\2.0 создаем файл bazaar.conf. В этом файле прописываем следующее:
[ALIASES]
kdiff = diff --using kdiff3.exe
Южно-Уральский Госудаственный Университет. ПС. АиУ.
Написать нам письмо
  Написать нам письмо