Теоретически возможно связать Mercurial или Git в расширении браузера? - PullRequest
3 голосов
/ 04 марта 2011

Я создаю программное обеспечение для веб-разработки на основе браузера по адресу http://gnymb.us. В конечном итоге у нас будет ограниченная офлайн-поддержка, так что вы сможете редактировать свои файлы в автономном режиме, используя localStorage, базы данных HTML5 или Google Gears.

В настоящее время я поддерживаю поддержку контроля версий для Subversion, Mercurial и Git. Это прекрасно работает, пока пользователь онлайн. Как вы, возможно, знаете, Mercurial и Git позволяют нам работать в автономном режиме. Одной из трудностей автономной поддержки редактора является то, что, поскольку это программное обеспечение основано на браузере, пользователь не сможет использовать автономные функции SCM.

Возможно ли теоретически объединить Mercurial или Git в расширение браузера, а затем изменить его для использования баз данных localStorage или HTML5 на основе хеша, а не иерархии файловой системы - без переписывания всего? Я знаю, что Mercurial использует Python, поэтому я бы хотел использовать Python в расширении браузера. Я открыт и для других решений.

Ответы [ 2 ]

1 голос
/ 07 марта 2011

Вы можете переопределить основные части git в расширении.Модель Git довольно проста, и это уже было сделано на других языках, например Ruby (grit) .

1 голос
/ 07 марта 2011

Вы можете создать плагин (или расширение браузера на основе собственного кода) для каждого браузера и связать с ним код VCS. Но вы сразу получаете 3 проблемы:

  1. Вам необходимо создать новый плагин, который ограничивает ваших потенциальных пользователей (не все рады установке плагинов)
  2. Вам необходимо создать этот плагин для каждого отдельного браузера и для каждой поддерживаемой платформы.
  3. Вы должны позаботиться о лицензии плагина, так как mercurial и git - GPL, а SVN - APL.
...