Git веб-интерфейсы — различия между версиями

Материал из YourcmcWiki
Перейти к: навигация, поиск
м
м
Строка 3: Строка 3:
 
! Название
 
! Название
 
! Сайт
 
! Сайт
 +
! Демо
 
! Язык
 
! Язык
 
! Поиск
 
! Поиск
! <abbr title="Создание/удаление репозиториев, управление правами доступами">Управление</abbr>
+
! <abbr title="Создание/удаление репозиториев, управление правами доступами">Созд</abbr>
 
! Баги
 
! Баги
 
! Wiki
 
! Wiki
Строка 14: Строка 15:
 
| gitweb
 
| gitweb
 
| https://git.wiki.kernel.org/index.php/Gitweb
 
| https://git.wiki.kernel.org/index.php/Gitweb
 +
| https://gitweb.torproject.org/
 
| Perl
 
| Perl
 
| commit, grep
 
| commit, grep
Строка 25: Строка 27:
 
| cgit
 
| cgit
 
| http://hjemli.net/git/cgit/
 
| http://hjemli.net/git/cgit/
 +
| http://cgit.freedesktop.org/
 
| C
 
| C
 
| commit
 
| commit
Строка 36: Строка 39:
 
| Gitblit
 
| Gitblit
 
| http://gitblit.com
 
| http://gitblit.com
 +
| https://git.wikimedia.org/
 
| Java
 
| Java
 
|style="color: white; background: green"| fulltext (Lucene)
 
|style="color: white; background: green"| fulltext (Lucene)
Строка 47: Строка 51:
 
| ViewGit
 
| ViewGit
 
| http://viewgit.fealdia.org/
 
| http://viewgit.fealdia.org/
 +
| https://os.inf.tu-dresden.de/~mroi/git/
 
| PHP
 
| PHP
 
| commit
 
| commit
 
|
 
|
|
+
|  
 
|
 
|
 
|
 
|
Строка 58: Строка 63:
 
| Gitalist
 
| Gitalist
 
| http://www.gitalist.com/
 
| http://www.gitalist.com/
 +
| http://example.gitalist.com/
 
| Perl
 
| Perl
 
| ???
 
| ???
Строка 65: Строка 71:
 
|
 
|
 
|
 
|
| Скорее мёртв, чем жив.
+
| Скорее мёртв, чем жив. Пример лежит.
 
|-
 
|-
 
| GitList
 
| GitList
 
| http://gitlist.org/
 
| http://gitlist.org/
 +
| http://repo.blindmikey.com/oEdit.git/
 
| PHP
 
| PHP
 
| отсутствует
 
| отсутствует
 +
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|
|
+
| Очень слабый клон gitweb - не умеет почти ничего. Есть, правда, статистика по коду (авторы, расширения файлов, всего файлов, всего байт). Стили github-подобные, на twitter bootstrap.
| Очень слабый клон gitweb, но стили на twitter bootstrap.
+
 
|-
 
|-
 
| GitPHP
 
| GitPHP
 
| http://www.gitphp.org/
 
| http://www.gitphp.org/
 +
| http://source.gitphp.org/
 
| PHP
 
| PHP
 
| commit
 
| commit
Строка 91: Строка 99:
 
| GitLab
 
| GitLab
 
| http://gitlab.org/
 
| http://gitlab.org/
 +
| http://demo.gitlab.com
 
| Ruby
 
| Ruby
 
| commit
 
| commit
Строка 98: Строка 107:
 
|style="color: white; background: green"| да
 
|style="color: white; background: green"| да
 
|style="color: white; background: green"| да
 
|style="color: white; background: green"| да
| Клон GitHub. Есть управление SSH-ключами.
+
| (неполный) клон GitHub. Есть управление SSH-ключами. С версии 6.0 появится платная версия.
 
|-
 
|-
 
| Gitorious
 
| Gitorious
 +
| http://gitorious.org/
 
| http://gitorious.org/
 
| http://gitorious.org/
 
| Ruby
 
| Ruby
Строка 113: Строка 123:
 
| <s>RhodeCode</s>
 
| <s>RhodeCode</s>
 
| http://rhodecode.org/
 
| http://rhodecode.org/
 +
| выпилено (было demo.rhodecode.org)
 
| Python
 
| Python
 
|style="color: white; background: green"| fulltext (Whoosh)
 
|style="color: white; background: green"| fulltext (Whoosh)
Строка 124: Строка 135:
 
| Indefero
 
| Indefero
 
| http://www.indefero.net/
 
| http://www.indefero.net/
 +
| http://www.jooria.com/scripts/demos/871
 
| PHP
 
| PHP
 
| ???
 
| ???
Строка 134: Строка 146:
 
|}
 
|}
  
RSS умеют все.
+
RSS умеют все. Граф коммитов не показывает ни один из перечисленных O_o
 +
 
 +
В тему — есть ещё [https://github.com/FredrikNoren/ungit ungit], на node.js. Но по-видимому, это скорее веб-клиент, чем серверный веб-интерфейс.
  
 
== Допилить ViewVC? ==
 
== Допилить ViewVC? ==
Строка 141: Строка 155:
 
* Чтение коммитов, открытие файла, annotate
 
* Чтение коммитов, открытие файла, annotate
 
* Commit hook
 
* Commit hook
После чего оно уже, в принципе, становится юзабельным, и сразу имеет офигенский поиск (уже мною реализованный на Sphinx’е). И, кстати, будет одной из немногих систем, поддерживающих и централизованные, и децентрализованные VCSы.
+
После чего оно уже, в принципе, становится юзабельным, и сразу имеет офигенский поиск (уже мною реализованный на Sphinx’е). И, кстати, будет одной из немногих систем, поддерживающих и централизованные, и децентрализованные VCSы (из вышеперечисленных такое умеет только Indefero).
  
 
Однако для DVCS’ов всё-таки хочется:
 
Однако для DVCS’ов всё-таки хочется:

Версия 18:17, 27 августа 2013

Название Сайт Демо Язык Поиск Созд Баги Wiki Review PullReq Примечания
gitweb https://git.wiki.kernel.org/index.php/Gitweb https://gitweb.torproject.org/ Perl commit, grep Поиск по комменту/автору/дате, а также содержимому файлов, но без полнотекстового движка, то есть grep’ом (медленно).
cgit http://hjemli.net/git/cgit/ http://cgit.freedesktop.org/ C commit Клон gitweb.
Gitblit http://gitblit.com https://git.wikimedia.org/ Java fulltext (Lucene) да Интегрируется с различными системами аутентификации.
ViewGit http://viewgit.fealdia.org/ https://os.inf.tu-dresden.de/~mroi/git/ PHP commit Клон gitweb.
Gitalist http://www.gitalist.com/ http://example.gitalist.com/ Perl  ??? Скорее мёртв, чем жив. Пример лежит.
GitList http://gitlist.org/ http://repo.blindmikey.com/oEdit.git/ PHP отсутствует Очень слабый клон gitweb - не умеет почти ничего. Есть, правда, статистика по коду (авторы, расширения файлов, всего файлов, всего байт). Стили github-подобные, на twitter bootstrap.
GitPHP http://www.gitphp.org/ http://source.gitphp.org/ PHP commit Клон gitweb.
GitLab http://gitlab.org/ http://demo.gitlab.com Ruby commit да да да да да (неполный) клон GitHub. Есть управление SSH-ключами. С версии 6.0 появится платная версия.
Gitorious http://gitorious.org/ http://gitorious.org/ Ruby commit да да да Открытый код сервиса Gitorious. Review плюс-минус, в виде merge request’ов. Есть управление SSH-ключами.
RhodeCode http://rhodecode.org/ выпилено (было demo.rhodecode.org) Python fulltext (Whoosh) да да да да да Основная поддержка — Mercurial. Визуальная тема оформления — страшный отстой. И вообще — RhodeCode теперь будет платным продуктом, так что ну его нафиг.
Indefero http://www.indefero.net/ http://www.jooria.com/scripts/demos/871 PHP  ??? да да да да Клон Google Code. Также умеет Mercurial, SVN и monotone O_o

RSS умеют все. Граф коммитов не показывает ни один из перечисленных O_o

В тему — есть ещё ungit, на node.js. Но по-видимому, это скорее веб-клиент, чем серверный веб-интерфейс.

Допилить ViewVC?

Кстати о птичках — можно же допилить поддержку Git (и hg, если охота) к ViewVC! И это совсем не сложно. Базовые фичи (интерфейс к репозиторию):

  • Чтение коммитов, открытие файла, annotate
  • Commit hook

После чего оно уже, в принципе, становится юзабельным, и сразу имеет офигенский поиск (уже мною реализованный на Sphinx’е). И, кстати, будет одной из немногих систем, поддерживающих и централизованные, и децентрализованные VCSы (из вышеперечисленных такое умеет только Indefero).

Однако для DVCS’ов всё-таки хочется:

  • Граф коммитов (индексируемый в базу)

Правда, чтобы оно было похоже на Gitlab и ему подобных, нужны «активные» фичи:

  • Code review — комментарии к коммитам и к строчкам кода
  • Личные репозитории, возможность разграничения прав на них (элементарно путём POSIX ACL)
  • Возможно, открывать на главной страницы свои последние коммиты?
  • README и отображение подмножества разметки MediaWiki (а то и просто ?action=render)

Зато при этом:

  •  — Багтрекер и Wiki не нужны вообще
  •  — Клонирование одним тыком малополезно
  •  — Pull request’ы при наличии Code review тоже малополезны, так как workflow не корпоративный
  •  — Онлайн-редактор файлов в репозитории из браузера не нужен
  •  — Заметки типа Gist’ов — малополезны
  •  — Push-сервер не нужен, так как можно юзать стандартный ssh в chroot, и даже с krb5 доменной авторизацией
  •  — От лент активности (кроме коммитов, ленты которых и так есть) в связи с отсутствием «социальных» фич тоже проку мало