<?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; svn</title>
	<atom:link href="http://www.charnad.com/blog/tag/svn/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, 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>
		<item>
		<title>SVN, Nginx и ошибка 405 Not Allowed</title>
		<link>http://www.charnad.com/blog/svn-nginx-i-oshibka-405-not-allowed/</link>
		<comments>http://www.charnad.com/blog/svn-nginx-i-oshibka-405-not-allowed/#comments</comments>
		<pubDate>Thu, 21 May 2009 20:19:32 +0000</pubDate>
		<dc:creator>CharnaD</dc:creator>
				<category><![CDATA[блог]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[VDS]]></category>

		<guid isPermaLink="false">http://www.charnad.com/?p=559</guid>
		<description><![CDATA[Для тех у кого проблемы с commit в svn. У меня сегодня случилась ошибка "405 Not Allowed". Оказалось во всем виноват nginx, который я недавно поставил. Проблема, вероятно, появляется у тех, у кого VDS от FirstVDS.ru. Дело в том, что nginx автоматически сжирает конфига апача и настраивает кеширование. А тогда, когда вы пытаетесь закоммитить css, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="oppic" src="http://www.charnad.com/blog/wp-content/uploads/pictures/svnlogo.png" alt=""/> Для тех у кого проблемы с commit в svn. У меня сегодня случилась ошибка "405 Not Allowed". Оказалось во всем виноват nginx, который я недавно поставил. Проблема, вероятно, появляется у тех, у кого VDS от FirstVDS.ru. Дело в том, что nginx автоматически сжирает конфига апача и настраивает кеширование. А тогда, когда вы пытаетесь закоммитить css, js или еще что-то, что nginx пытается проксировать, возникает ошибка. Я ее решил следующим способом - полностью закомментировал location в настройках субдомена svn.charnad.com, где указывается обработка статического контента, так как на это субдомене ничего не надо проксировтаь. После чего рестарт nginx'a и все отлично. Удачи.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.charnad.com/blog/svn-nginx-i-oshibka-405-not-allowed/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

