Bitbucket Extension
This extension is not distributed with Mercurial.
Authors: Georg Brandl and Armin Ronacher
Repository: http://bitbucket.org/seanfarley/hgbb
1. Overview
This extension has two purposes:
access bitbucket repositories via short URIs like bb:[name/]repo
- conveniently do several bitbucket.org operations on the command line
1.1. Implemented URL schemas
Should be usable everywhere instead of http://bitbucket.org/...:
- bb:repo
- clones your own "repo" repository, checkout via default method
- bb:username/repo
- clones the "repo" repository by username, checkout via default method
- bb+http:repo
- clones your own "repo" repository, checkout via http
- bb+http:username/repo
- clones the "repo" repository by username, checkout via http
- bb+ssh:repo
- clones your own "repo" repository, checkout via ssh
- bb+ssh:username/repo
- clones the "repo" repository by username, checkout via ssh
1.2. Implemented commands
hg bbforks
This command shows the list of registered forks of your repository on bitbucket.
With the -i option, it checks each fork for incoming changesets.
With the -if options, it also prints each incoming changeset shortly.
For example:
sphinx$ hg bbforks -if using 'birkenfeld/sphinx' as repo name getting descendants list looking at bboissin/tonfa-sphinx looking at yarko/sphinxdevel 11 incoming changesets found in bb+http:yarko/sphinxdevel 2904:4fbf67ecbaa9 2008-11-06 cyt007: image paths with *; latex title espaces; 2905:fa423b494885 2008-11-06 cyt007: updates from Georg 2906:a4622d835db3 2008-11-06 cyt007: reverting as per Georg ...
I'm very interested in discussions how to improve that feature, as well as contributions for further commands...
2. Configuration
Configure your .hgrc to enable the extension by adding following lines:
[extensions] hgbb = /path/to/hgbb.py
Then, configure your bitbucket user name and other options:
[bb] username = birkenfeld default_method = ssh
In individual repository .hgrcs, you can also add
[bb] ignore_forks = username1/repo, username2/repo, ...
to make hg bbforks ignore these repos.