Как избежать физического пути в bzr + ssh: // myserver / C: \ mydir? - PullRequest
2 голосов
/ 18 марта 2011

Я начинаю с Bazaar (переключаюсь с Subversion, извините, если иногда терминология немного отключена).Использование Bazaar локально без проблем.

Получил bzr + ssh: // работа на моем сервере Windows (наконец-то! И даже агент ssh работает вау!)

Теперь я хочу общий репозиторий насервер, с которого разработчики могут переходить на свои машины.Я хочу, чтобы хранилище находилось в определенной папке, например, в C: \ bzr \ MyProject.

Когда я делаю:

bzr init-repo --no-trees bzr+ssh://myserver.com/MyProject

, он создает хранилище в C: \ cygwin\ home \ user \ MyProject в домашнем каталоге моей учетной записи пользователя - это понятно, но беспокоит.

Тогда в качестве эксперимента я тоже попытался и успешно:

bzr init-repo --no-trees bzr+ssh://myserver.com/C:\bzr\MyProject

Это создало хранилище, где я хотел.Но как мне «сопоставить» или «псевдоним» URL (или bzr), чтобы мои разработчики могли войти под своими учетными записями и использовать URL

bzr+ssh://myserver.com/MyProject

для доступа к общему репозиторию в C: \ bzr \ MyProject?

Очевидно, я не хочу, чтобы разработчики использовали bzr + ssh: //myserver.com/C: \ bzr \ MyProject из-за физического пути в URL.

1 Ответ

1 голос
/ 19 марта 2011

Хорошо, мой собственный ответ: если вы хотите запустить Bazaar на сервере Windows для группы разработчиков, которая получит к нему доступ через Интернет, и вы не знакомы с Linux, Cygwin, SSHD и подобными вещами, тогда это может оказаться сложнее, чем вы можете вынести.

Я фактически отказался от идеи Bazaar и ушел с Mercurial. Надо сказать, установка Mercurial на сервере тоже крутая, но по крайней мере это всего лишь Windows, IIS и только немного Python. Работает через полдня.

Некоторые проблемы, с которыми я столкнулся при использовании bzr + ssh: // на сервере Windows:

  1. Требуется SSHD, установленный на сервере. SSHD (из урезанного Cygwin), поставляемый с Bazaar, отказался работать. Пришлось установить Cygwin и немного узнать о Linux, как работать как сервис, как настраивать, как генерировать ключи.

  2. Трудно добавить нового пользователя таким образом, чтобы не запрашивать ввод паролей для каждой команды. Потребуется сгенерировать пару ключей, имитировать копирование ключей на сервер в двух местах (домашняя папка Cygwin и Windows тоже). Вероятно, необходимо войти в систему пользователя Windows, чтобы создать профиль. Не хочу, чтобы разработчики входили в систему на сервере.

  3. Трудно настроить общий репозиторий в определенном месте на сервере. Не представляется возможным с bzr + ssh. Возможно с sftp. Может потребоваться использовать символические ссылки, как предложено выше bialix.

  4. Как новичок в Linux, я не понимаю всех последствий запуска sshd на сервере и предоставления доступа к оболочке для учетных записей разработчиков. Приходится использовать ограниченную оболочку bzr ... документации мало.

По сути, bzr + ssh: // на сервере Windows похоже на то, что установка Subversion на сервере Windows была похожа несколько лет назад - сложно. Надеюсь, с Базаром все станет лучше, потому что изначально я выбрал его вместо Mercurial.

...