← Back to team overview

launchpad-dev team mailing list archive

Re: A user story trying to convert from Bitlucket/mercurial to Launchpad/bzr

 

Hi,

I've tried posting to your blog, but it believes my response was spam :)
Thus, I'll respond here.

У уто, 30. 08 2011. у 12:04 +0200, cheater cheater пише:

> http://cheater.posterous.com/launchpad-not-an-alternative-for-bitbucket

Hi, your input is very valuable, but I'd still like to add a few things
as someone experienced with Launchpad (and a Launchpad developer, but
don't take any of what I say as anything other than just my personal
opinion).

Launchpad has (for better or for worse) been designed from an entirely
different perspective — one of a project. You should generally register
a project for any code you are hacking on.

Even with or without a project, bzr integrates nicely with LP, so if you
want to create a branch, all you need to do is something along the lines
of:
  bzr init my-branch # creates a branch locally
  bzr push -d my-branch lp:~cheater00/+junk/my-branch

After a few minutes it takes Launchpad to scan your branch, it will show
up on code.launchpad.net/~username/+junk/my-branch (no need to hit the
web UI at all). The dance with repos you found is a bzr optimization to
be faster and use less disk space locally: it's not necessary, and
probably not a big win for small branches.

Now, to put things in perspective, why is the "designed around projects"
important? It means that Launchpad is entirely unfamiliar to those used
to branches as the base pieces of the puzzle. Launchpad can indeed be
your public repository for all the related branches, for instance, look
at how the Launchpad-itself code-hosting area includes a bunch of
branches by different people on https://code.launchpad.net/launchpad/ —
but, this is by project, and branches are all attached to a project or
the personal playground area (+junk, which is not the best name). Eg. my
Launchpad branches all have URLs of lp:~danilo/launchpad/my-branch.

All branches for a single project are considered to be the same
repository.

I know this doesn't help you much (you should not accommodate the tools,
they should accommodate you), and it is not supposed to be taken as an
argument that Launchpad is doing the right thing, but if you do want to
give Launchpad a chance, I think overcoming this initial hurdle might
help you dive deeper into the Launchpad and see if it fits you
otherwise.

As for the UI-related comments, Launchpad is very big, and has plenty of
features (for instance, out of your bzr branches, you can have .deb
packages built automatically, or you can provide a translation interface
for your .po files directly in the branch). Atm, it does so many things
for so many different users. I agree it should do a much better job for
what you wanted to do, and your effort in describing the obstacles you
hit is very much appreciated. For once, we should clear up the "Register
a branch" mess you went through.

Also, best way to experiment with Launchpad is to try out our instance
at https://staging.launchpad.net/ — that has a live database that is
periodically refreshed from the production database, so you can play as
much as you please without worrying about messing something up: this
also allows you to register test projects, because we generally do not
allow them on the production instance. It does not do behave completely
like the production (eg. it doesn't send emails, because it is used for
a lot of testing), and when playing with bzr, you need to use
lp://staging/... URLs (eg. "bzr push
lp://staging/~cheater00/+junk/test").

Cheers,
Danilo




References