Git-to-Git imports

Launchpad has had Git-to-Bazaar code imports since 2009, along with imports from a few other systems.  These form part of Launchpad’s original mission to keep track of free software, regardless of where it’s hosted.  They’re also very useful for automatically building other artifacts, such as source package recipes or snap packages, from code hosted elsewhere.  Unfortunately they’re quite complicated: they need to be able to do a full round-trip conversion of every revision from the other version control system, which has made it difficult to add support for Git features such as signed commits or submodules.  Once one of these features is present anywhere in the history of a branch, importing it to Bazaar becomes impossible.  This has been a headache for many users.

We can do better nowadays.  As of last year, we have direct Git hosting support in Launchpad, and we can already build snaps and recipes straight from Git, so we can fulfil our basic goal more robustly now with a lot less code.  So, Launchpad now supports Git-to-Git code imports, also known as Git mirroring.  You can use this to replace many uses of Git-to-Bazaar imports (note that there’s no translations integration yet, and of course you won’t be able to branch the resulting import using bzr).

See our Git documentation for more details.

Tags: , , ,

7 Responses to “Git-to-Git imports”

  1. Matteo Nastasi Says:

    I have 2 separated repositories on a third party git repository, one for application and one for packaging stuff.
    What is the best way to keep both updated and build package with the latest commits of both ?
    I’m planning to create 2 different projects to keep track of them but seems me ugly, better options?
    Regards, Matteo.

  2. Nathan Osman Says:

    A big thanks to everyone who was involved in seeing this through. Even signing commits in Git was enough to break Bazaar imports, so this is an extremely welcome addition.

  3. Christian Dannie Storgaard Says:

    Launchpad can build snaps? Searching the documentation on this site doesn’t give me any hints as to how this might be integrated; could you link me to somewhere I might see more?

  4. waxmigs2902 Says:


  5. Andrew Pennebaker Says:

    Launchpad no longer lets me login. When I try, it gives this crappy error message:

    “Bad bot, go away! Request aborted.”

    Please fix your bot detection.

  6. NikoKrause Says:


    I want to use Launchpad to translate a project on GitHub.
    Unfortunately someone created a gpg signed commit on this project in github.
    Now (auto-)importing this project from github to launchpad bazar fails.

    The git-to-git import doesn’t seem to support the translation integration. Is this planned?
    If yes, when will it be available (approximately).
    If no, is there a workaround?

    Thanks in advance

  7. Colin Watson Says:

    @NikoKrause: It’s on our backlog (, but I’m afraid I can’t give any time estimate at the moment. We’d be happy to help mentor somebody who wanted to contribute this feature!

Leave a Reply