Skip to main content

A bitbucket server helper for working with lots of repos.

Project description

#bitbucket-helper

A command-line utility for working with lots of bitbucket server projects and repositories.

The helper allows you to clone or pull every bitbucket repository you have access too. Repositories are pathed under their parent project, making it easy to identify the source project.

Installation

The utility requires python3.7

pip install bitbucket-helper

Setup

The first time you attempt to sync, you will get prompted to provide your bitbucket details. The tool supports both Bitbucket server and Bitbucket cloud.

Bitbucket server requires a read-only personal access token. To generate go to Bitbucket -> Manage account -> Personal Access Tokens.

Bickbucket cloud requires an App Password if you use 2FA. The App must be granted Team Membership -> Read, Projects -> Read

All configuration settings get stored in ~/.bitbucket-helper.config. To reconfigure you can delete this file.

Listing Repositories

You can list all of the repositories you have permission to access with:

bitbucket-helper list

The command outputs the following quoted comma-separated values:

"project_key","clone_uri"

Synchronising

The synchronisation function uses bitbucket APIs to get all accessible projects and repositories. For each project, it will create a directory using its key. For each repository, we perform a git clone or a git pull if we already have a local copy. After the pull, we prune and delete local branches that have been merged at the origin.

Local directory structure:

  • working_directory (~/bitbucket)
    • proj1
      • repo1
      • repo2
    • proj2
      • repo1
      • repo2
bitbucket-helper sync

Git log commands

Bitbucket helper makes it easy to search for commits across all of your repositories using simple filters. Log commands operate on locally synched repositories, so remember to do a bitbucket-helper sync first.

You can find all commits after a specified date using:

bitbucket-helper log --after=2020-03-02

To search from commits between two tags:

bitbucket-helper log --from_tag=1.9.0 --to_tag=1.9.1

The command outputs the following quoted comma-separated values:

"repo","commit_hash","unix_time","iso_date","commit_message","author"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bitbucket-helper-0.0.6.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bitbucket_helper-0.0.6-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file bitbucket-helper-0.0.6.tar.gz.

File metadata

  • Download URL: bitbucket-helper-0.0.6.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for bitbucket-helper-0.0.6.tar.gz
Algorithm Hash digest
SHA256 88952d9b05177c41cb08ffcd4826a7ad70dcb74f51d18603d1d8300b20e24502
MD5 df30b242e45359f28290ed34c014597c
BLAKE2b-256 ee8d20c1b37f9c74c8914a7da690ca98609f7208f226e33e8b2545bc55d67713

See more details on using hashes here.

File details

Details for the file bitbucket_helper-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: bitbucket_helper-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for bitbucket_helper-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6041ae1841792d73802bec42ccff9d9903faf7f91e5334d48f92c32adecc2ee2
MD5 da41f6e7fb7ede71064990dc7b32ca37
BLAKE2b-256 8b726cedb5b6e0113b7b1ce5e8f0fa2047cef28ba8386de7dfc53608e3772548

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page