Setting Up a Project on Launchpad and Using Bazaar

Which revision control system go you fell is better than the rest?

  • CVS

    Votes: 0 0.0%
  • Bazaar (bzr)

    Votes: 0 0.0%
  • Mercurial

    Votes: 0 0.0%
  • Git

    Votes: 0 0.0%
  • Other

    Votes: 0 0.0%

  • Total voters
    0
D

DevynCJohnson

Guest
Many developers use some type of distributed revision control system (DRCS) which allows numerous programmers to work on the same software project. Bazaar is a popular DRCS that works with Launchpad - a site that hosts open-source Linux software. However, some programmers have difficulties setting up a Bazaar and Launchpad project, and the documentation on the Internet seems poor or complicated. This tutorial should change all of that. I will use my newest project as the example for this tutorial.

The first step requires the programmer to make a folder containing their code. For example, I made a folder titled "DOSEMU"; inside are miscellaneous files and backups. The main source code folder is "trunk". This folder contains my latest developmental code.

Next, we need to install Bazaar and Bazaar-Explorer by typing the below command. Bazaar (bzr) is the command-line system and Bazaar-Explorer is the graphical user interface. Allow the below command to install any needed dependencies.

Code:
sudo apt-get install bzr bzr-explorer

While that installs, now is a good time to sign up for a Launchpad account. Go to https://launchpad.net/ and click the "Log in/Register". This step is easy and self-explanatory.

Once you have created a Launchpad account and installed Bazaar, the project can be prepared for Launchpad. Open Bazaar-Explorer and click "Start a new project". Next, click the icon "Initialize". This will bring up a window to create the Bazaar branch. Browse for your project; select your "trunk" folder.

1lp.png


Next, select the branch type. I chose "Plain branch", but your needs may differ from mine. Once finished, click "Okay". Below are the branches to choose from and their definitions.

2lp.png


Colocated branches - Create a working tree at location pointing to a trunk branch in an embedded shared repository.
Feature branches - Create a shared repository at location then create a trunk branch inside that repository.
Plain branch - Create a plain branch at location. If inside a shared repository, revisions will be stored there. Otherwise the revisions will be stored in the branch.
Shared repository - Create a repository at location. Branches created under the repository will use it for storing revisions.

CITE: The definitions above are from http://doc.bazaar.canonical.com/explorer/en/visual-tour-windows.html

Now, the main window will change. To add the files to the current revision, click the blue plus-sign. This causes a window to pop up with all of the projects files in the trunk folder.

3lp.png


If all of the files are there, confirm the selection. The files will now be added to the current revision. The main window will refresh displaying the added files.

4lp.png


5lp.png


This is the perfect time to setup the project on Launchpad. Go to https://launchpad.net/projects/ new after you have logged into Launchpad. Answer the questions for your project and click continue. If you get an error, the problem answer will be marked and the rest of the data will remain in the boxes. The next window will display a list of projects that appear similar to yours. The page asks if your project is a duplicate of any of them. If not, or you if you want to make an existing project different from the current, continue on. Next, fill out more information about your project. It is best that you fully understand what the different licenses mean. View this link (http://opensource.org/licenses/category) for information on a particular license.

6lp.png


After all of that is complete, your project page has been made. On the right, you will see links under "Configuration Process". Click each one and answer the question on each one page at a time from top to bottom. The bug track is the website or service that keeps track of bugs and allows users to report issues. The answers forum is the place where users can ask questions about the software. The translation settings control where and who can perform translations for the project.

11lp.png


Switch over to Bazaar-Explorer and click "Commit". In the window that pops up, type a message for your commit. Developers usually type messages like "Bug fixes include" or "Added feature X". For a first commit, you could type "The first commit of project X.". Once finished, click commit.

15lp.png


Then, switch over to a terminal in your projects main folder (the one containing trunk) and type "bzr update". Next, go back to your Launchpad project. The last link under "Configuration Process" is "Configure project branch". On this page, you will see a command in the form "bzr push lp:~USERNAME/PROJECT/trunk". Paste the given command into the terminal and hit enter. Once complete, click the "choose" link next to the branch box on that same Launchpad page. Type your projects address in the form lp:~USERNAME/PROJECT/trunk replacing USERNAME and PROJECT with the correct data in the open pop-up window. Click the magnifying glass and select your project below if found.

16lp.png


17lp.png


Congratulations, as long as everything went well, your project is now on Launchpad. However, there is still more to do (mostly optional configuration). On the main page, you can change many settings.

Configure Branding - Change the logo/icon/symbol of the project.
Programming Languages - List the languages used in your software.
Maintainer – The main administrator/boss/leader of project.
Driver – Manages bugs and blueprints
Change Details – Information displayed at the top of the main project screen about your hosted software.
Announcements - RSS feeds concerning your project.

To create a release for download, gzip the files in the trunk folder. Move the tarball up one directory from trunk or to your designated release folder of choice. In a terminal that is in the same directory as the tarball, type "gpg --armor --sign --detach-sig ./YOUR_TARBALL.EXTENSION". Next, on your projects main Launchpad page, click "trunk", then scroll down and select "Create Release". In the new window, click "Create Milestone" and fill out the questions. If you are releasing the downloadable file today, then for "target date" enter today's date. When finished with the pop-up box, fill in the other data and press the "Create Release" button. Next, click on your release version and scroll down to upload the tarball and ASC file (optional) you have created.

19lp.png


NOTE: To create the ASC file, you must have a valid GPG/PGP key. Creating one is beyond the scope of this tutorial.

After all of these tasks are complete, your project is fully setup and you are ready to host your project.

22lp.png
 

Attachments

  • slide.JPG
    slide.JPG
    64.7 KB · Views: 63,018
  • 20lp.png
    20lp.png
    145 KB · Views: 1,249
Last edited:


I think you forgot to mention to set up username in bazaar.It is set up by
Code:
bzr whoami "Your Name <[email protected]>"
You can do that, but it is not entirely needed since the username is specified when using the "bzr push lp:~USERNAME/PROJECT/trunk" command. However, this may be different when registering for team projects.
 

Members online


Top