3

http://gnymb.usでブラウザベースの Web 開発ソフトウェアを構築しています。最終的には、localStorage、HTML5 データベース、または Google Gears を利用してファイルをオフラインで編集できるように、オフライン サポートを制限する予定です。

現在、Subversion、Mercurial、および Git のソース管理サポートを構築しています。これは、ユーザーがオンラインのときにうまく機能します。ご存じかもしれませんが、Mercurial と Git を使用すると、オフラインで作業できます。エディターのオフライン サポートの 1 つの問題は、このソフトウェアがブラウザー ベースであるため、ユーザーがオフライン SCM 機能を利用できないことです。

Mercurial または Git をブラウザー拡張機能にバンドルし、ファイル システム階層ではなく、ハッシュベースの localStorage または HTML5 データベースを使用するように変更することは理論的に可能でしょうか? すべてを書き直す必要はありません。Mercurial が Python を使用していることは知っているので、ブラウザー拡張機能で Python を使用したいと考えています。私は他のソリューションにもオープンです。

4

2 に答える 2

1

拡張機能でgitの重要な部分を再実装できます。Gitのモデルは非常に単純であり、これはすでに他の言語、たとえばRuby(grit)で行われています。

于 2011-03-07T08:48:30.853 に答える
1

ブラウザごとにプラグイン (またはネイティブ コード ベースのブラウザ拡張機能) を作成し、VCS コードをリンクすることができます。しかし、すぐに 3 つの問題が発生します。

  1. 潜在的なユーザーを制限する新しいプラグインを作成する必要があります (誰もが喜んでプラグインをインストールするわけではありません)。
  2. このプラグインは、異なるブラウザごと、およびサポートされているプラ​​ットフォームごとに作成する必要があります
  3. Mercurial と git は GPL ですが、SVN は APL であるため、プラグインのライセンスに注意する必要があります。
于 2011-03-07T08:37:34.427 に答える