0.1.1 Public Domain    
  not rated
Distribute/setuptools/distutils command for GitHub





github-distutils is a tool that provides distribute/setuptools/distutils commands for GitHub. You can use GitHub downloads instead of PyPI downloads for release.

To use this, follow the instruction.


First of all your software must be packaged within the standard distribution way: use distutils, Distribute or setuptools. This package contains an extension command for that.

Then, add this package into setup_requires parameter of your setup() configuration (of script):

 setup_requires=['github-distutils >= 0.1.0'])

Now there will be github_upload command for your

 python github_upload --help
Common commands: (see '--help-commands' for more)


Options for 'github_upload' command:
 --repository (-R) GitHub repository name e.g. user/reponame
 --username (-u) GitHub username
 --password (-p) GitHub password


If -u/--username and -p/--password are not present, it will shows the prompt. -R/--repository is required.


Upload is very easy:

 python sdist github_upload -R user/reponame register

By explained:

 Makes the source distribution file. If your package name is YourPackageName and its version is 1.2.3, and then its file name becomes YourPackageName-1.2.3.tar.gz.
github_upload -R user/reponame
 Uploads the built source distribution file into your GitHub repository. It does not mean that it will be version-controlled, but it will be simply uploaded to its downloads page.
 Using the GitHub download URL registers the package of this version into PyPI. The URL of PyPI page will be

Defaulting options

You can make default values for these options by specifying in the setup.cfg configuration file. For example, if you want to default --repository, make setup.cfg file like (hyphens becomes underscores):

repository = user/reponame

You can make a shorthand alias as well:

release = sdist github_upload register

You can checkout the source code from its GitHub repository:

 git clone git://

If you found a bug, please report it to the issue tracker.

For Bitbucket users

Use bitbucket-distutils which is a package by the same author if you are using Bitbucket instead of GitHub.
Last updated on June 20th, 2012

0 User reviews so far.