2011-02-27 14 views
2

我想爲node.js構建一個顛覆客戶端庫。如何爲node.js構建svn客戶端庫

首先,你知道這是否已經存在?

如果不是,你有這樣的努力有任何洞察力?我應該

  • 代碼JavaScript中的整個客戶端協議?
  • 作爲node.js插件包裝本地庫(哪一個?)?
  • 將命令行調用封裝在node.js模塊中?

你知道一個優雅的顛覆客戶端API在另一種語言,我可以「克隆」?

謝謝您的幫助

+0

路線圖對node.js http://subversion.apache.org/roadmap.html中的任何內容都保持沉默,因此您可能是第一個。首先執行wrap命令行,然後執行,然後本機庫(svn客戶端源可用,因此您可以自己編譯它)來了解node.js的怪癖並最終將本地庫移植到node.js. – rene 2011-02-27 21:47:34

回答

1

有一個非常強大的SVN客戶端庫在C,可今天Subversion項目的一部分。它與SWIG一起提供了用於Perl,Python和Ruby的綁定。您可以在官方的Subversion存儲庫中看到status of the official bindings。我相信Python實際上擁有最好的非C綁定,所以如果你想看看一個強大的實現,我會從那裏開始。

我知道其他人已經完成了SWIG->語言擴展本身,例如PHP SVN PECL library

就我所採用的方法而言 - 如果必須作爲臨時步驟在node.js中包裝命令行調用。但我認爲你要直接或通過SWIG綁定來包裝本地C庫。這將爲您提供最佳性能和最佳兼容性。