README.rst
162 lines
| 6.1 KiB
| text/x-rst
|
RstLexer
r2020 | ========= | |||
Bradley M. Kuhn
|
r4212 | Kallithea | ||
r2020 | ========= | |||
About | ||||
----- | ||||
r572 | ||||
Bradley M. Kuhn
|
r4212 | ``Kallithea`` is a fast and powerful management tool for Mercurial_ and GIT_ | ||
r3306 | with a built in push/pull server, full text search and code-review. | |||
r3224 | It works on http/https and has a built in permission/authentication system with | |||
Bradley M. Kuhn
|
r4212 | the ability to authenticate via LDAP or ActiveDirectory. Kallithea also provides | ||
r1750 | simple API so it's easy integrable with existing external systems. | |||
r1093 | ||||
Bradley M. Kuhn
|
r4212 | Kallithea is similar in some respects to github_ or bitbucket_, | ||
however Kallithea can be run as standalone hosted application on your own server. | ||||
r3224 | It is open source and donation ware and focuses more on providing a customized, | |||
self administered interface for Mercurial_ and GIT_ repositories. | ||||
Bradley M. Kuhn
|
r4212 | Kallithea works on \*nix systems and Windows it is powered by a vcs_ library | ||
r3224 | that Lukasz Balcerzak and Marcin Kuzminski created to handle multiple | |||
r2117 | different version control systems. | |||
r572 | ||||
Bradley M. Kuhn
|
r4212 | Kallithea uses `PEP386 versioning <http://www.python.org/dev/peps/pep-0386/>`_ | ||
r572 | ||||
r2020 | Installation | |||
------------ | ||||
Bradley M. Kuhn
|
r4212 | Stable releases of Kallithea are best installed via:: | ||
r2020 | ||||
Bradley M. Kuhn
|
r4192 | easy_install kallithea | ||
r2020 | ||||
Or:: | ||||
Bradley M. Kuhn
|
r4192 | pip install kallithea | ||
r2020 | ||||
Detailed instructions and links may be found on the Installation page. | ||||
Bradley M. Kuhn
|
r4192 | Please visit http://packages.python.org/Kallithea/installation.html for | ||
r2020 | more details | |||
r572 | ||||
Source code | ||||
----------- | ||||
Bradley M. Kuhn
|
r4179 | The latest sources can be obtained from https://kallithea-scm.org/repos/kallithea | ||
r254 | ||||
r1167 | ||||
MIRRORS: | ||||
Issue tracker and sources at bitbucket_ | ||||
Bradley M. Kuhn
|
r4179 | https://bitbucket.org/conservancy/kallithea | ||
r572 | ||||
r1167 | ||||
r572 | ||||
Bradley M. Kuhn
|
r4212 | Kallithea Features | ||
r1093 | ------------------ | |||
r572 | ||||
r3224 | - Has its own middleware to handle mercurial_ and git_ protocol requests. | |||
r3184 | Each request is authenticated and logged together with IP address. | |||
- Build for speed and performance. You can make multiple pulls/pushes simultaneous. | ||||
Proven to work with 1000s of repositories and users | ||||
- Supports http/https, LDAP, AD, proxy-pass authentication. | ||||
- Full permissions (private/read/write/admin) together with IP restrictions for each repository, | ||||
r3848 | additional explicit forking, repositories group and repository creation permissions. | |||
- User groups for easier permission management. | ||||
- Repository groups let you group repos and manage them easier. They come with | ||||
permission delegation features, so you can delegate groups management. | ||||
r3184 | - Users can fork other users repos, and compare them at any time. | |||
r3848 | - Built in Gist functionality for sharing code snippets. | |||
r3184 | - Integrates easily with other systems, with custom created mappers you can connect it to almost | |||
any issue tracker, and with an JSON-RPC API you can make much more | ||||
Bradley M. Kuhn
|
r4212 | - Build in commit-api let's you add, edit and commit files right from Kallithea | ||
r3184 | web interface using simple editor or upload binary files using simple form. | |||
- Powerfull pull-request driven review system with inline commenting, | ||||
changeset statuses, and notification system. | ||||
- Importing and syncing repositories from remote locations for GIT_, Mercurial_ and SVN. | ||||
r1093 | - Mako templates let's you customize the look and feel of the application. | |||
r3224 | - Beautiful diffs, annotations and source code browsing all colored by pygments. | |||
r3184 | Raw diffs are made in git-diff format for both VCS systems, including GIT_ binary-patches | |||
- Mercurial_ and Git_ DAG graphs and yui-flot powered graphs with zooming and statistics | ||||
to track activity for repositories | ||||
r847 | - Admin interface with user/permission management. Admin activity journal, logs | |||
pulls, pushes, forks, registrations and other actions made by all users. | ||||
r3224 | - Server side forks. It is possible to fork a project and modify it freely | |||
r3184 | without breaking the main repository. | |||
r3224 | - rst and markdown README support for repositories. | |||
r3184 | - Full text search powered by Whoosh on the source files, commit messages, and file names. | |||
r847 | Build in indexing daemons, with optional incremental index build | |||
r1093 | (no external search servers required all in one application) | |||
r3224 | - Setup project descriptions/tags and info inside built in db for easy, non | |||
r3184 | file-system operations. | |||
r3224 | - Intelligent cache with invalidation after push or project change, provides | |||
r1167 | high performance and always up to date data. | |||
r3184 | - RSS / Atom feeds, gravatar support, downloadable sources as zip/tar/gz | |||
r3224 | - Optional async tasks for speed and performance using celery_ | |||
- Backup scripts can do backup of whole app and send it over scp to desired | ||||
location | ||||
r847 | - Based on pylons / sqlalchemy / sqlite / whoosh / vcs | |||
r253 | ||||
r3224 | ||||
r676 | Incoming / Plans | |||
---------------- | ||||
r253 | ||||
r3184 | - Finer granular permissions per branch, or subrepo | |||
- Web based merges for pull requests | ||||
- Tracking history for each lines in files | ||||
r3224 | - Simple issue tracker | |||
r1093 | - SSH based authentication with server side key management | |||
- Commit based built in wiki system | ||||
- More statistics and graph (global annotation + some more statistics) | ||||
r3224 | - Other advancements as development continues (or you can of course make | |||
r1167 | additions and or requests) | |||
r552 | ||||
r572 | License | |||
------- | ||||
Bradley M. Kuhn
|
r4212 | ``Kallithea`` is released under the GPLv3 license. | ||
r572 | ||||
r2020 | Getting help | |||
------------ | ||||
r676 | ||||
r2020 | Listed bellow are various support resources that should help. | |||
r676 | ||||
r2020 | .. note:: | |||
r3224 | ||||
r2601 | Please try to read the documentation before posting any issues, especially | |||
the **troubleshooting section** | ||||
r3224 | ||||
Bradley M. Kuhn
|
r4179 | - Open an issue at `issue tracker <https://bitbucket.org/conservancy/kallithea/issues>`_ | ||
r2020 | ||||
Bradley M. Kuhn
|
r4180 | - Join #kallithea on FreeNode (irc.freenode.net) | ||
or use http://webchat.freenode.net/?channels=kallithea for web access to irc. | ||||
r2020 | ||||
Bradley M. Kuhn
|
r4180 | You can follow this project on Twitter, **@KallitheaSCM**. | ||
r2020 | ||||
r796 | ||||
Online documentation | ||||
-------------------- | ||||
r572 | ||||
Bradley M. Kuhn
|
r4212 | Online documentation for the current version of Kallithea is available at | ||
Bradley M. Kuhn
|
r4192 | - http://packages.python.org/Kallithea/ | ||
- http://kallithea.readthedocs.org/ | ||||
r2020 | ||||
r1093 | You may also build the documentation for yourself - go into ``docs/`` and run:: | |||
r572 | ||||
make html | ||||
r1167 | (You need to have sphinx_ installed to build the documentation. If you don't | |||
r3224 | have sphinx_ installed you can install it via the command: | |||
r1167 | ``easy_install sphinx``) | |||
r3224 | ||||
r869 | .. _virtualenv: http://pypi.python.org/pypi/virtualenv | |||
.. _python: http://www.python.org/ | ||||
r1167 | .. _sphinx: http://sphinx.pocoo.org/ | |||
r869 | .. _mercurial: http://mercurial.selenic.com/ | |||
r1123 | .. _bitbucket: http://bitbucket.org/ | |||
r1167 | .. _github: http://github.com/ | |||
r869 | .. _subversion: http://subversion.tigris.org/ | |||
.. _git: http://git-scm.com/ | ||||
.. _celery: http://celeryproject.org/ | ||||
.. _Sphinx: http://sphinx.pocoo.org/ | ||||
r3224 | .. _vcs: http://pypi.python.org/pypi/vcs | |||