Moving Bugzilla to git?

Mark Côté mcote at mozilla.com
Mon Oct 21 16:36:57 UTC 2013


The initial migration is fairly straightforward; bzr fast-export | git
fast-import works very close to perfectly. I have to do a bit of
tweaking to fix one tiny problem and to preserve Bazaar's bug ID
metadata in the git commit messages, but that's not difficult. The more
difficult part is keeping bzr in sync with git after the migration, but
that should be possible with a custom script, most of which I have
already written.

Mark


On 2013-10-21 12:30 PM, Randall S. Becker wrote:
>
> Hi Mark,
>
>  
>
> If we have a mirror from Bazaar to CVS, we should be able to migrate
> to git and preserve history quite cleanly. I have used the cvs2git
> conversion successfully. It is non-destructive and should allow the
> procedure to be tested and verified prior to making the call to cut
> over. I am a big fan of git, and have a moderate amount of experience
> navigating its subtleties, so if you wish to contact me for
> assistance, don’t hesitate.
>
>  
>
> Regards,
>
> Randall
>
>  
>
> *From:*developers-owner at bugzilla.org
> [mailto:developers-owner at bugzilla.org] *On Behalf Of *Mark Côté
> *Sent:* October-21-13 12:20 PM
> *To:* developers at bugzilla.org
> *Subject:* Moving Bugzilla to git?
>
>  
>
> Hi all, I'm the manager of Mozilla's Bugzilla team. We've talked about
> this idea before, but I thought I would flesh it out and ask for feedback.
>  
> I think we should move the Bugzilla code off of the Bazaar system hosted
> by Mozilla and onto git, and maybe even GitHub. There are a few reasons
> for this:
>  
> * git is pretty much the de facto standard for VCSs these days. This
> means many people are familiar with it and like its flexibility (I
> certainly do).
>  
> * On the other side, Bazaar is almost dead. There are maybe 2-3 commits
> to trunk every month.
>  
> * GitHub is extremely popular, and for good reason, since it's a very
> powerful system. Exposure via GitHub could mean increased contributions
> (whether we can keep up with them or not is, of course, another question. 
>  
> * Mozilla would very much like to retire Tinderbox, since Bugzilla is
> the only system still using it. Moving to GitHub means we could use
> travis-ci, which is really nice (we use it for other projects on my team).
>  
> * Mozilla would also very much like to retire the Bazaar and CVS servers,
> both of which are used solely by Bugzilla.
>  
> Doing a one-time migration is quite easy using fast-import/fast-export.
> I've verified that it works, with one small error that should be simple
> to fix (a single file not deleted in the git version).
>  
> However, even with some advance warning, I don't think we can convert
> and then abandon Bazaar immediately due to Bugzilla's suggested upgrade
> path, which is to install a package and then pull updates directly from
> the Bazaar repository. If we had to do a security release, it doesn't
> seem right to require users to switch VCSs to get that fix. That said, I
> don't think we need to maintain Bazaar indefinitely, just for some grace
> period. I suggest 9 months, which would put that sometime mid-2014. I
> would, however, like to shut down CVS when we migrate to git,
> so that we don't have to maintain three VCSs at the same time.
>  
> I haven't found a suitable solution to automatically mirror changes from
> git to Bazaar; there is one project[1] that at first glance appeared
> suitable, but after running into problems, I had a discussion with the
> package's author, who stated that there difficult bugs that would
> prevent it from working the way we would need it to.
>  
> Luckily Bugzilla has already gone through this before, from CVS to
> Bazaar, and we have a script[2] that steps through Bazaar commits and
> applies them to a CVS repo. I've been modifying that script to do a
> similar git-to-bzr translation, and I'm confident I can get it working.
> The mirroring would be in a single direction, that is, from git to
> Bazaar; after the migration, Bazaar would be read only to everyone
> except the mirroring script.
>  
> We would still need migration instructions, which I believe we can do
> using the old cvs-to-bzr instructions[3] as a base.
>  
> As for location of the repository, we could have Mozilla host the
> official git repository and set up two-way mirroring to GitHub.
>  
> How does this sound to everyone? Any strong objections? I and the rest
> of the BMO team are willing to do most of the work.
>  
> Mark
>  
>  
> [1] https://launchpad.net/bzr-git
> [2] http://bzr.mozilla.org/bzr-plugins/bzr-to-cvs/view/head:/bzr-to-cvs.pl
> [3] https://wiki.mozilla.org/Bugzilla:Moving_From_CVS_To_Bazaar
>  

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bugzilla.org/pipermail/developers/attachments/20131021/e1959316/attachment.html>


More information about the developers mailing list