<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>В лабиринте извилин &#187; Mercurial</title>
	<atom:link href="http://www.charnad.com/blog/tag/mercurial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.charnad.com</link>
	<description>Блог-центр им. CharnaD</description>
	<lastBuildDate>Wed, 18 Jan 2012 14:52:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Mercurial и NetBeans</title>
		<link>http://www.charnad.com/blog/mercurial-i-netbeans/</link>
		<comments>http://www.charnad.com/blog/mercurial-i-netbeans/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 21:18:51 +0000</pubDate>
		<dc:creator>CharnaD</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Mercurial]]></category>
		<category><![CDATA[netbeans]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.charnad.com/?p=679</guid>
		<description><![CDATA[В продолжение истории про установку Mercurial я расскажу как настроить IDE NetBeans. По умолчанию плагин для работы с меркуриалом должен быть включен, если же нет, то идите в Tools -> Plugin и там включайте. Репозитарий инициируется в свойствах проекта. Чтобы сохранить все текущие файлы, делаете commit в том же меню, где инициировали проект. Коммитится все [...]]]></description>
			<content:encoded><![CDATA[<p><img class="oppic" src="http://www.charnad.com/blog/wp-content/uploads/pictures/logo_netbeans.gif" alt="NetBeans logo" />В продолжение истории про установку Mercurial я расскажу как настроить IDE NetBeans. По умолчанию плагин для работы с меркуриалом должен быть включен, если же нет, то идите в Tools -> Plugin и там включайте. <span id="more-679"></span><br />
<img style="margin: 10px;" src="http://www.charnad.com/blog/wp-content/uploads/pictures/hg-and-nb/hg-active.png" alt="Mercurial active" /><br />
Репозитарий инициируется в свойствах проекта.<br />
<img style="margin: 10px;" src="http://www.charnad.com/blog/wp-content/uploads/pictures/hg-and-nb/hg-init.png" alt="Mercurial init" /><br />
Чтобы сохранить все текущие файлы, делаете commit в том же меню, где инициировали проект. Коммитится все локально, поэтому проблем тут, я думаю, не может быть никаких. (Если у вас выскакивает ошибка, что не найден Mercurial, якобы неверно указан PATH или еще что-нибудь, при том, что вы все точно указали - значит проект слишком большой. Эта проблема есть у NetBeans, попробуйте коммитить проект по частям)<br />
Проблемы начинаются, когда вы хотите сделать pull/push. Он начинается и идет бесконечно. Дело все в том, что авторизация по ssh для NetBeans проходит только с помощью пары ключей. У пользователей Линукса он уже должен быть в ~/.ssh. А те, у кого Windows, <a href="http://www.charnad.com/blog/ssh-pod-windows/">помните</a> мы вместе с ssh копировали ssh-keygen.exe, вот его и настала пора использовать. Запускаете и на все вопросы нажимаете просто Enter. Хотя, по желанию можете установить пароль. В папке, которую вы определили, как HOME, появится .ssh папка с двумя файлами id_rsa и id_rsa.pub (если вы не выбирали другое название). Если вы хотите работать с BitBucket, тогда содержимое pub файла копируете в ваш профиль на сайте. Если вы хотите пушить/пуллить на свой сервер, тогда у пользователя mercurial (или того, кто управляет репозиториями) в папке ~/.ssh создайте файл authorized_keys, если еще нет и добавьте строку с содержимым pub файла. Теперь у вас все должно работать.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.charnad.com/blog/mercurial-i-netbeans/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как подружились Mercurial, Windows и Debian.</title>
		<link>http://www.charnad.com/blog/kak-podruzhilis-mercurial-windows-i-debian/</link>
		<comments>http://www.charnad.com/blog/kak-podruzhilis-mercurial-windows-i-debian/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 01:52:44 +0000</pubDate>
		<dc:creator>CharnaD</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[Mercurial]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.charnad.com/?p=657</guid>
		<description><![CDATA[Эта история началась трагически. Я случайно стер исходники проекта, над которым работал несколько дней. Бекапов не делал, svn забросил (я работаю один, без команды), для версионности вполне обходился Local History в Eclipse/NetBeans. Но эта потеря заставила меня как следует задуматься о том, чтобы все-таки использовать VCS, хотя бы для бекапа. Основной выбор был между Git [...]]]></description>
			<content:encoded><![CDATA[<p><img class="oppic" src="http://www.charnad.com/blog/wp-content/uploads/pictures/mercurial-logo.png" alt="Mercurial logo"/>Эта история началась трагически. Я случайно стер исходники проекта, над которым работал несколько дней. Бекапов не делал, svn забросил (я работаю один, без команды), для версионности вполне обходился Local History в Eclipse/NetBeans. Но эта потеря заставила меня как следует задуматься о том, чтобы все-таки использовать VCS, хотя бы для бекапа. Основной выбор был между Git и Mercurial (о достоинствах и недостатках CVS/SVN и прочих ищите в поисковиках). За Mercurial для меня сыграло то, что на Bitbucket был бесплатно доступен один приватный репозиторий, в отличии от Github, где все публично. А у меня на некоторых сайтах пароли в коде зашиты.<span id="more-657"></span></p>
<p>Установка Mercurial на Windows делается элементарно: Next, Next, Next, Ok. Скачать можно, например, <a href="http://mercurial.berkwood.com/">здесь</a>. Можете так же скачать <a href="http://bitbucket.org/tortoisehg/stable/wiki/download">TortoiseHg</a>, если вам нравится их TortoiseSVN. Под Linux еще проще.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> mercurial</pre></div></div>

<p> Для Eclipse IDE поищите плагин Eclipse Mercurial, а в NetBeans поддержка встроенная. Возможно вам понадобится прописать в системную переменную PATH путь к тому месту, куда вы установили Mercurial.</p>
<p>И все, вы можете пользоваться Меркуриалом. Ему, в отличии от SVN совершенно не нужно поднимать сервер. Все ваши изменения будут хранится в папке .hg в корне проекта. В отличии от svn Mercurial, Git и другие современные системы не суют свои папки в каждую папку проекта.</p>
<p>Вкратце расскажу о том, как начать работу с этой системой. Если у вас проект лежит локально, то в папке проекта в консоли введите</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">hg init</pre></div></div>

<p> Тем самым, вы инициируете проект в этой папке. Дальше, как в svn:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">hg add; hg commit <span style="color: #660033;">-m</span> <span style="color: #ff0000;">'Initial commit'</span>;</pre></div></div>

<p>Тем самым вы добавляете все файлы в текущей папке к проекту и сразу же коммитите с комментарием "Initial commit". Если же проект где-то выложен и вы хотите подключиться к нему, тогда клонируете его себе в пустую папку.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">hg clone адрес репозитория</pre></div></div>

<p>Я думаю, что как создать и закоммитить проект в IDE вы разберетесь.</p>
<p>Итак, бесплатные репозитории на BitBucket публичны (кроме всего одного приватного), а размер всего 150 мегабайт. Значит надо ставить свой "сервер". Здесь все оказалось довольно быстро и просто. Как установить Mercurial на Debian я уже выше написал. После чего создал нового пользователя mercurial с помощью adduser. Дал ему в распоряжение папку /home/mercurial, закачал на сервер коды проектов по папкам и инициировал в каждой проект Меркуриала. А потом просто в Windows сделал так:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">hg pull <span style="color: #c20cb9; font-weight: bold;">ssh</span>:<span style="color: #000000; font-weight: bold;">//</span>mercurial<span style="color: #000000; font-weight: bold;">@</span>myserver<span style="color: #000000; font-weight: bold;">/</span>myproject
hg update</pre></div></div>

<p> Если у вас Винда ругается на отсутствие ssh смотрите <a href="http://www.charnad.com/blog/ssh-pod-windows/">здесь</a>. Обьясню, что я сделал. Так как в Mercurial нет центрального сервера, то все репозитории равны. И вы всегда коммитите в свой локальный. А чтобы обменяться изменениями вы делаете pull (скачиваете) или push (закачиваете). Таким образом я скачал проект с сервера, чтобы удостоверится, что все работает. Надеюсь, что и у вас все получилось. А если нет - спрашивайте в комментариях.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.charnad.com/blog/kak-podruzhilis-mercurial-windows-i-debian/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

