For a long time Firefox Desktop development has supported both Mercurial and Git users. This dual SCM requirement places a significant burden on teams which are already stretched thin in parts. We have made the decision to move Firefox development to Git.

  • We will continue to use Bugzilla, moz-phab, Phabricator, and Lando
  • Although we’ll be hosting the repository on GitHub, our contribution workflow will remain unchanged and we will not be accepting Pull Requests at this time
  • We’re still working through the planning stages, but we’re expecting at least six months before the migration begins

APPROACH

In order to deliver gains into the hands of our engineers as early as possible, the work will be split into two components: developer-facing first, followed by piecemeal migration of backend infrastructure.

Phase One - Developer Facing

We’ll switch the primary repository from Mercurial to Git, at the same time removing support for Mercurial on developers’ workstations. At this point you’ll need to use Git locally, and will continue to use moz-phab to submit patches for review.

All changes will land on the Git repository, which will be unidirectionally synchronised into our existing Mercurial infrastructure.

Phase Two - Infrastructure

Respective teams will work on migrating infrastructure that sits atop Mercurial to Git. This will happen in an incremental manner rather than all at once.

By the end of this phase we will have completely removed support of Mercurial from our infrastructure.

  • @uis
    link
    111 year ago

    Edit: added “Why github?”

    • Kogasa
      link
      fedilink
      31 year ago

      Fair point. I would say on a personal level that GitHub actions is quite nice to use, especially with the marketplace. But I’d be surprised if switching version controls also entailed a CI/CD change for Mozilla, so I can’t think of a good reason.