======================== Using Breezy with GitHub ======================== GitHub: the largest code-hosting site ------------------------------------- This tutorial looks at how Breezy and GitHub can be used together. Accessing code in GitHub using Breezy ======================================== Getting the code for a project ------------------------------ Breezy users can grab code from GitHub using regular GitHub URLs: brz branch git://github.com/owner/name where `owner` is the name of the owner and `name` is the repository name. Here are some examples:: brz branch https://github.com/inkscape/inkscape brz branch git://github.com/KDE/amarok brz branch https://github.com/python/cpython You can then browse the code locally using your favorite editor or IDE and change the code if you wish. To access a non-default branch, specify the 'branch' segment parameter:: brz branch https://github.com/inkscape/inkscape,branch=backports Publishing your changes ----------------------- Having fixed that annoying bug or added that cool feature you've always wanted, it's time to impress your friends and make the world a better place by making your code available to others. As explained earlier, GitHub is a code hosting service so you can push your branch to it and others can access your code from there. In the GitHub web UI, you can create a "fork" of an upstream repository. For example, if user "jelmer" forked the inkscape repository at https://github.com/inkscape/inkscape then the fork would be at https://github.com/jelmer/inkscape. You can then push your changes to a branch like this:: brz push git+ssh://github.com/jelmer/inkscape,branch=my-branch Others can then download your code like this:: brz branch git://github.com/jelmer/inkscape,branch=my-branch Associating branches with GitHub issues --------------------------------------- The standard Breezy bugtracking functionality can also be used for GitHub issues. When you commit using Breezy, use the --fixes option like this:: brz commit --fixes github:inkscape/inkscape/1234 where 1234 is the bug ID. This will add some metadata to the commit message. You can also define a short name for a specific project, by adding an alias for a project. For example, to add an alias for dulwich:: brz config bugtracker_dulwich_url=https://github.com/dulwich/dulwich/issues/{id}