1. Howard Mao
  2. bitbucket-cli


bitbucket-cli /

Filename Size Date modified Message
39 B
Ignore the venv I created ...
1.6 KB
fixes to update and delete commands
1.3 KB
add BSD license
2.5 KB
fixes to update and delete commands
88 B
add cli
374 B
bump version number again

BitBucket CLI

A command-line helper for BitBucket. This program is inspired Chris Wanstrath's wonderful github command-line program, and aims to expose a similar interface for BitBucket users.


pip install bitbucket-cli


The BitBucket CLI can be involked with either bitbucket or the shortened bb command:

bitbucket <command> [options]


bb <command> [options]

Most bitbucket commands take some or all of the following options:

-h, --help                        show this help message and exit
-u USERNAME, --username=USERNAME  your bitbucket username
-p PASSWORD, --password=PASSWORD  your bitbucket password
-o, --public                      make this repo public
-c, --private                     make this repo private
-P PROTOCOL, --protocol=PROTOCOL  which network protocol to use (https|ssh)

For help with any command:

bb <command> --help

Available Commands & Examples

clone an existing BitBucket repository:

...  bb clone --username <your-user-name> --protocol ssh zhemao bitbucket-cli

pull a BitBucket repository:

...  bb pull <owner-name> <repo-name>

create a new BitBucket repository:

...  bb create --username <your-user-name> --public --protocol ssh <new-repo-name>

Creating a new BitBucket repository from an existing local repository is easy with create_from_local:

...  bb create_from_local --username <your-user-name> --public --protocol ssh <repo-owner> <repo-name>

update a BitBucket repository. Currently the only option is to change whether a repository is public or private. This example will make the repository private:

...  bb update --username <user-name> --private <repo-name>

delete one of your BitBucket repository:

...  bb delete --username <your-user-name> <repo-name>

For the clone, pull, and create_from_local commands, the scm (either git or hg) will be detected from bitbucket or your local filesystem. Explicitly declaring the scm on the command line or from the user configuration will not override it.


You can create a configuration file in ~/.bitbucket that follows the following format

username = <Your Username>
password = <Your Password>

scm = <'git' or 'hg'>
protocol = <'https' or 'ssh'>

It will provide default options which can be overridden on the command line.