<?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/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>lab.naoki.sato.name &#187; git</title>
	<atom:link href="http://naoki.sato.name/lab/archives/tag/git/feed" rel="self" type="application/rss+xml" />
	<link>http://naoki.sato.name/lab</link>
	<description>lab for naoki.sato</description>
	<lastBuildDate>Sun, 20 Mar 2011 06:02:24 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://naoki.sato.name/lab/archives/tag/git/feed" />
		<item>
		<title>gitとDropboxでお手軽・無料のSource Hostingを実現する</title>
		<link>http://naoki.sato.name/lab/archives/38</link>
		<comments>http://naoki.sato.name/lab/archives/38#comments</comments>
		<pubDate>Sat, 16 Jan 2010 10:17:13 +0000</pubDate>
		<dc:creator>naoki</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[dropbox]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[webservice]]></category>

		<guid isPermaLink="false">http://naoki.sato.name/lab/?p=38</guid>
		<description><![CDATA[以前から興味があった、バージョン管理システムの一つである git を導入しました。
目的としては、もちろん開発しているソースのバージョンを管理する、というのもありますが、それ以上にHostingサービスを使って、複数台の [...]]]></description>
			<content:encoded><![CDATA[<p>以前から興味があった、バージョン管理システムの一つである git を導入しました。</p>
<p>目的としては、もちろん開発しているソースのバージョンを管理する、というのもありますが、それ以上にHostingサービスを使って、複数台のPCから最新のコードにアクセスできるようにしたい、というものがあります。</p>
<p>ただ、調べてみたところ、有名な github を含め、基本的に Hostingサービスではプライベート用途で使う場合はお金がかかる模様 (ソースコードを公開するOSSの場合は基本的に無料です)。</p>
<p>それでは、ということで、<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">複数PC間のデータをバックグラウンドで意識せずに同期してくれる無料ストレージサービス Dropbox</a> とgitを組み合わせて、手軽にプライベート用のSource Hostingを実現することにしました。要は、リモートgitサーバを使う方法で、その宛先を<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a>内のローカルファイルにするだけです。</p>
<p>ここではプログラミングのソースを例に上げていますが、同じやり方でバージョン管理をしたい書類なども管理できると思いますので、お試し下さい。<br />
なお、<a href="http://www.dropbox.com/help/11" target="_blank">Dropbox自体の機能として、 30日以内であればファイルを以前のバージョンに戻す機能もあります</a>。</p>
<ol>
<li><a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a> をインストールします。</li>
<li>gitをインストールします (Macの場合は MacPorts からインストールできます）。</li>
<li><a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a> フォルダにgitのリポジトリを入れるフォルダを作成します。<br />
<blockquote><p><code>cd ~/Dropbox<br />
mkdir repo</code></p></blockquote>
</li>
<li>上で作成したフォルダに <em>{プロジェクトのフォルダ名}.git</em> というフォルダを作成し、&#8221;&#8211;bare&#8221;オプションを付けてinitします。<br />
<blockquote><p><code>cd repo<br />
mkdir test.git<br />
cd test.git<br />
git --bare init</code></p></blockquote>
</li>
<li>プロジェクトが新規の場合、上で作成した<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a>上の <em>{プロジェクトのフォルダ名}.git</em> をcloneします。<br />
<blockquote><p><code>cd ~/dev<br />
git clone ~/Dropbox/repo/test.git</code></p></blockquote>
</li>
<li>既存のソースなどを追加する場合は、一度そのプロジェクト上でadd、commitした後、<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a>上の <em>{プロジェクトのフォルダ名}.git</em> にpushします。その後のpush、pullを楽にするためにremoteでoriginを追加しておきます。<br />
<blockquote><p><code>cd ~/dev/old_prj<br />
git init<br />
git add .<br />
git commit<br />
git push ~/Dropbox/repo/test.git master<br />
git remote add origin ~/Dropbox/repo/test.git</code></p></blockquote>
</li>
<li>あとはgithub等リモートサーバを利用するときと同様です。変更を加えてpushすれば<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a>内のリポジトリが更新され、その内容が他のPCにも自動的に同期されて、リポジトリが最新の状態に保たれます。<br />
<blockquote><p><code>git pull<br />
...<br />
git push</code></p></blockquote>
</li>
</ol>
<p>ちなみに、<a href="https://www.dropbox.com/referrals/NTIwNjU5NTk" target="_blank">Dropbox</a>が使えるのであれば、最初からそのフォルダ内で開発するのが最も楽で確実だと思いますが、その場合、開発時に自動的に作られるファイルや一時ファイル等も同期されてしまうことになります。<br />
それを気にするかは好みの問題ですが、もし気になるような方は上記の方法で必要なファイルのリポジトリだけを同期するというやり方を試していただければと思います。</p>
<p>(参考)</p>
<ul>
<li><a href="http://progit.org/book/ja/">Pro Git &#8211; Table of Contents</a></li>
<li><a href="http://kishi-r.com/2009/07/31/mac_git/">Macにgitをインストールしてそのままgithubにも登録 : kishi-r.com</a></li>
<li><a href="http://blog.champierre.com/archives/670">せっかちな人のための git 入門 &#8211; git をインストールし、共同で開発できる環境を整えるまで : 僕は発展途上技術者</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://naoki.sato.name/lab/archives/38/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://naoki.sato.name/lab/archives/38" />
	</item>
	</channel>
</rss>

