RhodeCode (formerly hg-app) is Pylons based repository management and serving for mercurial. It's similar to github or bitbucket, but it's suppose to run as standalone app, it's open source and focuses more on restricted access to repositories There's no default free access to RhodeCode You have to create an account in order to use the application. It's powered by vcs library that we created to handle many various version control systems.
RhodeCode uses Semantic Versioning
The default access is
- username: demo
- password: demo
Source code is along with issue tracker is available at http://bitbucket.org/marcinkuzminski/rhodecode
Also a source codes can be obtained from demo rhodecode instance http://hg.python-works.com/rhodecode/summary
- Has it's own middleware to handle mercurial protocol request. Each request can be logged and authenticated. Runs on threads unlikely to hgweb You can make multiple pulls/pushes simultaneous
- Full permissions and authentication per project private/read/write/admin. One account for web interface and mercurial push/pull/clone.
- Mako templates let's you customize look and feel of application.
- Beautiful diffs, annotations and source codes all colored by pygments.
- Mercurial branch graph and yui-flot powered graphs with zooming and statistics
- Admin interface with user/permission management. User activity journal logs pulls, pushes, forks,registrations. Possible to disable built in hooks
- Server side forks, it's possible to fork a project and hack it free without breaking the main.
- Full text search on source codes, search on file names. All powered by whoosh and build in indexing daemons (no external search servers required all in one application)
- Rss / atom feeds, gravatar support, download sources as zip/tarballs
- Async tasks for speed and performance using celery (works without them too)
- Backup scripts can do backup of whole app and send it over scp to desired location
- Setup project descriptions and info inside built in db for easy, non file-system operations
- Added cache with invalidation on push/repo management for high performance and always up to date data.
- Based on pylons 1.0 / sqlalchemy 0.6 / sqlite
- code review (probably based on hg-review)
- git support (when vcs can handle it - it's almost there !)
- commit based build in wiki system
- clone points and cloning from remote repositories into rhodecode (git and mercurial)
- some cache optimizations
- other cools stuff that i can figure out (or You can help me figure out)
rhodecode is released under GPL license.
Online documentation for current version is available at http://packages.python.org/RhodeCode/. You may also build documentation for yourself - go into docs/ and run:make html