Edgewall Software


Bitbucket logo

BitBucket is a Mercurial repository hosting service with a project view similar to Trac in spirit. It is a proprietary licensed platform, and uses a cloud that is free for small teams with unlimited private and public repositories.

As they say:

Develop code as a team. Keep all your development in one place, be it issue tracking, documentation or sharing code.

Lots of good stuff to steal there ;-)

Among other things, they use WikiCreole all over the place, the same way Trac uses its own Trac WikiFormatting everywhere. Furthermore, the wiki is itself stored in a secondary Mercurial repository, much like described in TighterSubversionIntegration#Aprivaterepository.

Note that we maintain an official Mercurial mirror of the SubversionRepository there, see edgewall/trac.

Basic Mercurial Setup

Obviously, you will need a Mercurial client:

It is considered Good Practice to first get things working with command-line, before moving to GUI-based solutions.

Once the client is installed, some basic configuration is in order. Create the global configuration file, depending on your platform:

  • On Windows XP and earlier: C:\Documents and Settings\USERNAME\Mercurial.ini
  • On Windows Vista and newer: C:\Users\USERNAME\Mercurial.ini
  • TODO Other OS?

This configuration file is ini-style. Important settings for working with the Trac BitBucket mirror:

convert =
eol =
graphlog = 
; See below concerning external extensions
hgsvnutils = /path/to/HgExts/HgSvnUtils/HgSvnUtils.py

git = true

Mercurial Extensions

For details on the concept of extensions see https://www.mercurial-scm.org/wiki/UsingExtensions

An important external extension for Trac development with Mercurial is the HgSvnUtils extension (maintained by RemyBlank).

To install it, go to some local directory and run (from command-line)

hg clone http://rc.c-space.org/hg/HgSvnUtils

and then set the hgsvnutils option mentioned above to the checked-out location.

Working with BitBucket

Once you installed Mercurial command-line client, you can hg clone http://bitbucket.org/edgewall/trac (or any other public repository).

After creating an account and a repository (or Trac-fork), you will also be able to push & pull changes against the remote repository:

  • Using https://USERNAME@bitbucket.org/USERNAME/reponame over SSL (built-in support in the Mercurial client); or
  • Using ssh://hg@bitbucket.org/USERNAME/reponame over SSH (note that this uses hg as username!)
    For this you will need ssh client and SSH key-pair
Last modified 2 months ago Last modified on Nov 9, 2017, 11:03:03 PM

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.