RhodeCode is a fast and powerful management tool for Mercurial and GIT with a built in push/pull server, full text search and code-review.
RhodeCode is a fast and powerful management tool for Mercurial and GIT with a built in push/pull server, full text search and code-review. It works on http/https and has a built in permission/authentication system with the ability to authenticate via LDAP or ActiveDirectory. RhodeCode also provides simple API so it's easy integrable with existing external systems.
RhodeCode is similar in some respects to github or bitbucket, however RhodeCode can be run as standalone hosted application on your own server. It is open source and donation ware and focuses more on providing a customized, self administered interface for Mercurial and GIT repositories. RhodeCode works on *nix systems and Windows it is powered by a vcs library that Lukasz Balcerzak and Marcin Kuzminski created to handle multiple different version control systems.
Full permissions (private/read/write/admin) together with IP restrictions for each repository, additional explicit forking and repository creation permissions.
Build in commit-api let's you add, edit and commit files right from RhodeCode 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.
Mako templates let's you customize the look and feel of the application.
rst and markdown README support for repositories.
Setup project descriptions/tags and info inside built in db for easy, non file-system operations.
Fixed broken handling of adding an htsts headers.
Redesign UI, with lots of small improvements.
Group management delegation. Group admin can manage a group, and repos under it, admin can create child groups inside group he manages.
Repository extra fields. Optional unlimited extra fields can be defined for each repository to store custom data.
API get_repo call includes repo followers now.
Large amounts of improvements in pull requests.
#734 repo switcher is available in all pages.
Added option to turn on HSTS headers when using SSL.
#83 show repo size on summary page.
#745 added show full diff link into to big diff message.
Deprecated RSS links - ATOM is the present and the future.
Add option to define custom lexers for custom extensions for code highlight in rcextension module.
Git executable is now configurable via .ini files.
#689 repositories now has optional detach/delete option for connected forks.
Obfuscate password when cloning a remote repo with credentials.
#788 tarball cache. zip or compressed tarballs can be optionally cached for faster serving.
Speed up of last_changeset extraction in VCS.
Configurable HTTP codes for repository locking.
Possible to use closed branches in ?branch= in changelog.
#797 git refs filter is now configurable via .ini file.
New ishell paster command for easier administrative tasks.
#654 switch to handles / in branch/tag/bookmark names.
#572 moved out password reset tasks from celery.
#730 filter out repo groups choices to only ones that you have write+ access.
#462 disable file editing when not on branch head.
#731 update-repoinfo sometimes failed to update data when changesets were initial commits.
#749,#805 and #516 Removed duplication of repo settings for rhodecode admins and repo admins.
Global permission update with "overwrite existing settings" shouldn't override private repositories.
#642 added recursion limit for stats gathering.
#739 Delete/Edit repositories should only point to admin links if the user is an super admin.
Fixed escaping of html in "patch" view for GIT repos.
#747 load changeset cache after forking to refresh lightweight dashboard caches.
Quick repo list: public/private icon control should only control icons, not repo visibility.
#746 UnicodeDedode errors on feed controllers.
#756 cleanup repos didn't properly compose paths of repos to be cleaned up.
#763 gravatar helper function should fallback into default image if somehow email provided is empty.
Fixes #762, LDAP and container created users are now activated based on the registration settings in permissions.
Cleanup would recurse into every leaf and could thus not be used on lots of large repositories.
Better detection of deleting groups with subgroups inside.
Fixed issue with renaming repos group together with changing parents with multiple nested trees.
#594 web interface file committing executes push hooks.
Disallow cloning from different URI's that http[s]/svn/git/hg.
Handling of RhodeCode extra params in consistent way.
Don't normalize path if it's empty on adding a file through web interface.
#809 added url quote in clone url.
Fixed issues with importing non-ascii repo names.
Fixed multiple IP addresses in each of extracted IP.
Lot of other small bug fixes and improvements.
fixes issue #756 cleanup repos didn't properly compose paths of repos to be cleaned up.
IP restrictions for users. Each user can get a set of whitelist IP+mask for extra protection. Useful for buildbots etc.
added full last changeset info to lightweight dashboard. lightweight dashboard is now fully functional replacement of original dashboard.
implemented certain API calls for non-admin users.
added lightweight dashboard option. ref #500. New version of dashboard page that doesn't use any VCS data and is super fast to render. Recommended for large amount of repositories.
implemented compare engine for git repositories.
added caching layer into RSS/ATOM feeds.
fixes #630 git statistics do too much work making them slow.
implemented #658 Changing username in LDAP-Mode should not be allowed.
Fixed #585, checks for status of revision where to strict, and made opening pull request with those revision impossible due to previously set status. Checks now are made also for the repository.
fixed #597 commits in future get negative age.
fixed migrations of permissions that can lead to inconsistency. Some users sent feedback that after upgrading from older versions issues with updating default permissions occurred. RhodeCode detects that now and resets default user permission to initial state if there is a need for that. Also forces users to set the default value for new forking permission.
changed setup-app into setup-rhodecode and added default options to it.
Implemented #509, RhodeCode enforces SSL for push/pulling if requested at earliest possible call.
Import remote svn repositories to mercurial using hgsubversion.
fixed issue #450. Rhodecode no longer will crash when bad revision is present in journal data.
fix for issue #417, git execution was broken on windows for certain commands.
fixed issue #459. Changed the way of obtaining logger in reindex task.
configurable clone url template with possibility to specify protocol like ssh:// or http:// and also manually alter other parts of clone_url.
fixed creating archives with subrepos. Some hooks were triggered during that operation leading to crash.
fixed missing email in account page.
#337 Fixes issues with validation of repository name conflicting with a group name. A proper message is now displayed.
implements #237 added password confirmation for my account and admin edit user.
implements #291 email notification for global events are now sent to all administrator users, and global config email.
changelog uses lazy loading of affected files details, in some scenarios this can improve speed of changelog page dramatically especially for larger repositories.
implements #214 added support for downloading subrepos in download menu.
fixed #126 Deleting repository on Windows, rename used incompatible chars.
fixes for issues #137,#116 and problems with unicode and accented characters.
performance upgrade for cached repos list - each repository has its own cache that's invalidated when needed.
new improved and faster code stats (based on pygments lexers mapping tables, showing up to 10 trending sources for each repository. Additionally stats can be disabled in repository settings.
security bugfix simplehg wasn't checking for permissions on commands other than pull or push.
Disabled dirsize in file browser, it's causing nasty bug when dir renames occure. After vcs is fixed it'll be put back again.