Эта история началась трагически. Я случайно стер исходники проекта, над которым работал несколько дней. Бекапов не делал, svn забросил (я работаю один, без команды), для версионности вполне обходился Local History в Eclipse/NetBeans. Но эта потеря заставила меня как следует задуматься о том, чтобы все-таки использовать VCS, хотя бы для бекапа. Основной выбор был между Git и Mercurial (о достоинствах и недостатках CVS/SVN и прочих ищите в поисковиках). За Mercurial для меня сыграло то, что на Bitbucket был бесплатно доступен один приватный репозиторий, в отличии от Github, где все публично. А у меня на некоторых сайтах пароли в коде зашиты.
Установка Mercurial на Windows делается элементарно: Next, Next, Next, Ok. Скачать можно, например, . Можете так же скачать , если вам нравится их TortoiseSVN. Под Linux еще проще.
apt-get install mercurial
Для Eclipse IDE поищите плагин Eclipse Mercurial, а в NetBeans поддержка встроенная. Возможно вам понадобится прописать в системную переменную PATH путь к тому месту, куда вы установили Mercurial.
И все, вы можете пользоваться Меркуриалом. Ему, в отличии от SVN совершенно не нужно поднимать сервер. Все ваши изменения будут хранится в папке .hg в корне проекта. В отличии от svn Mercurial, Git и другие современные системы не суют свои папки в каждую папку проекта.
Вкратце расскажу о том, как начать работу с этой системой. Если у вас проект лежит локально, то в папке проекта в консоли введите
hg init
Тем самым, вы инициируете проект в этой папке. Дальше, как в svn:
hg add; hg commit -m 'Initial commit';
Тем самым вы добавляете все файлы в текущей папке к проекту и сразу же коммитите с комментарием "Initial commit". Если же проект где-то выложен и вы хотите подключиться к нему, тогда клонируете его себе в пустую папку.
hg clone адрес репозитория
Я думаю, что как создать и закоммитить проект в IDE вы разберетесь.
Итак, бесплатные репозитории на BitBucket публичны (кроме всего одного приватного), а размер всего 150 мегабайт. Значит надо ставить свой "сервер". Здесь все оказалось довольно быстро и просто. Как установить Mercurial на Debian я уже выше написал. После чего создал нового пользователя mercurial с помощью adduser. Дал ему в распоряжение папку /home/mercurial, закачал на сервер коды проектов по папкам и инициировал в каждой проект Меркуриала. А потом просто в Windows сделал так:
hg pull ssh://mercurial@myserver/myproject hg update
Если у вас Винда ругается на отсутствие ssh смотрите здесь. Обьясню, что я сделал. Так как в Mercurial нет центрального сервера, то все репозитории равны. И вы всегда коммитите в свой локальный. А чтобы обменяться изменениями вы делаете pull (скачиваете) или push (закачиваете). Таким образом я скачал проект с сервера, чтобы удостоверится, что все работает. Надеюсь, что и у вас все получилось. А если нет - спрашивайте в комментариях.
А еще я писал про:










Октябрь 10th, 2009 at 09:41
«на Bitbucket был бесплатно доступен один приватный репозиторий»
«Итак, бесплатные репозитории на BitBucket публичны»
Что-то я логики не уловил
Октябрь 10th, 2009 at 12:39
Да, не совсем ясно выразился. Там есть один приватный репозиторий. Но только один. Все остальное публично.