SparkleShareをインストールしてみた

nogajun
nogajun

_

2012.2.12追記

WikiのほうにSparkleShareのまとめを書きましたので、こちらもどうぞ。 http://www.nofuture.tv/linux/sparkleshare


Google+のDebianページでExperimentalにSparkleShareが入ったというので試してみました。

SparkleShareとは、Gitを利用してDropboxのようにオンラインのファイルリポジトリとリアルタイムに同期しながらストレージを共有するオープンソースソフトウェアです。

対応しているOSは、Linux、MacOS、Androidです。 Windowsでも使えるようですが、自分でビルドしなければいけないのでセットアップが大変そうです。

ファイル同期に利用するオンラインのGitリポジトリですが、Gitホスティングサービスのgithub、Bitbucket、Gitorious、The GNOME Project(これはちょっと違うけど)が利用できるほか、特筆すべきことはSSHでアクセスできるサーバー上に git init --bare --shared で作成した共有Gitリポジトリを同期先として利用できます。

(2012/02/03追記: 最初、思い違いをしていて、SparkleShareの共有リポジトリにはGitoliteなどのサーバーの設置が必要かと思っていましたが、その必要はまったくありません。素晴らしい!! もちろんGitoliteなども利用できます。)

使ってみる

SparkleShareのインストールですが、apt-lineのexperimentalリポジトリを有効にしておいて apt-get -t experimental install sparkleshare で終わりです。

初期設定

SparkleShareを起動すると、名前とメールアドレスの登録が求められます。 メールアドレスを登録すると同期先リポジトリを利用するために必要なSSH公開鍵と秘密鍵が自動的に作成されます。

ホームディレクトリには「SparkleShare」という名前のディレクトリが作成され、これが同期元ディレクトリになります。 SparkleShareディレクトリの中には「(名前)'s key.txt」というテキストファイルがあります。これが登録時に作成されたSSH公開鍵です。

準備が出来たのでGitHubを利用してファイルを共有します。

GitHubを使ってファイルを共有するには、まずGitHubにログインして https://github.com/repositories/new から共有するリポジトリを作成します。 注意ですが、GitHubの無料プランでは共有したファイルを非公開にはできないので、非公開にしたいなら有料プランに入ってください。

次にSSH公開鍵の登録ですが、GitHubのAccount SettingsからSSH Public Key( https://github.com/account/ssh )を開き、ホームディレクトリ ~/SparkleShare/(名前)'s key.txt のSSH公開鍵をコピーアンドペーストして登録します。

SparkleShareの設定ですが、常駐したSparkleShareのアイコンをクリックするとメニューが表示されるので、Add Hosted Projectを選びます。

GitHubの登録

リポジトリの登録画面では、GitHubを選び、リモートパスに「/GitHubユーザー名/GitHubプロジェクト」を入力して、Addボタンを押します。

登録終了

登録に成功するとホームディレクトリの~/SparkleShare/ディレクトリ以下にGitHubプロジェクト名のディレクトリが作成されるので、あとはDropboxのようにファイルを置くだけで共有されます。

SparkleShareのまだ調べてないところ

Gitを使って共有しているので、git logでコミットログが見れる。 ということはブランチ切ったり巻き戻したりできるのかな? ちょっとワクワクしてきた。