MercurialとGoogleドライブ。その2

MercurialとGoogleドライブ。で、同期機能があるとリポジトリの整合性が取れなくなってしまうからダメよ、という話だったのですが、じゃあどうすればいいのかを考えてみました。

要件としては、
  • どこからでもアクセスできるネットワーク上にある
  • 同期機能は提供しない(リポジトリ自体をコピーしない)
  • 簡単に使用できる(ドライブとしてマウントできればおそらくベスト)
  • セキュリティは必要十分に確保されている
  • 速度的はストレスがないレベルである
というあたりでしょうか。

GitHub(Git)やLaunchpadBazaar)、Bitbucket(Mercurial/Git)などのコードホスティングサービスを利用するのも方法の一つですが、クローズドなリポジトリを管理するには費用がかかったりします。Bitbucketは5ユーザまでなら無料でクローズドなリポジトリを作れるようなので、これを選択するのもアリ(というかこれがベスト?)かもしれません。

とりあえずここではそれ以外の方法として、Google Drive を動悸せずにドライブマウントできないか、と検索してみたら、大まかに2つの方法があるようです。

ひとつは WebDAV 接続してドライブマウントする方法、もうひとつは G-Suite を契約して Drive File Stream を利用してドライブマウントする方法です。もうひとつ、ドライブマウントはできないみたいですが、Tablacus Explorer + cloudpluginという方法もあるようですが、今回は置いておきます。

WebDAVの方法では、CarotDAVを使うのがよいようです。
これを使えば、たとえば Google Drive に "repo" というディレクトリを作ってリポジトリとして管理し、それをどこかのドライブ(たとえば G: など)にマウントしておいて、Git や Mercurial を使ってローカルに clone などをしてやればどこからでも作業ができることになります。ただし、利用する PC ではそれぞれ「バックアップと同期」の設定画面から "repo" を同期しない設定にしないといけません。

#XXX ポータブル版で試しているのですが、System Exception 1200 と出てドライブマウントできないようです。

0 件のコメント:

コメントを投稿

Windowsでシンボリックリンクを試してみる。

きっかけは、1つのファイルを別の名前で起動したら違う動きになるようなスクリプトを書く、でした。  busybox なんかでは、同じ実行形式ファイルの名前を、lsにすればlsと同じ、cpとすればcpと同じ動作をするようにしてますが、Pythonスクリプトでそれと同じように argv...