On Wed, Nov 28, 2018 at 09:20:17PM +0000, James Graham wrote:
> On 28/11/2018 20:15, Mark Côté wrote:
> > We're still working through a longer-term vision that we'll share early
> > next year, but I can answer some questions now.
> 
> Thanks, this is helpful!
> 
> >     * Have to make a choice early on about whether to learn a relatively
> >     unfamiliar (to the majority of developers) VCS (mercurial), use a
> >     slightly unorthodox git setup with slow initial clone (cinnabar), or
> >     use
> >     the largely unsupported (?) GitHub clone.
> > 
> > 
> > This is a very difficult problem. I can't see this problem going away
> > entirely without some sort of executive decision to require everyone use
> > a particular VCS. That said, Mercurial should still be seen as the
> > default VCS, especially as we get partial-clone support
> > (https://bugzilla.mozilla.org/show_bug.cgi?id=1505555). Git-cinnabar
> > should be treated as an "advanced" option. Perhaps docs could be
> > clarified as to this.
> 
> I understand that mercurial is not going away :) Having said that it's a
> pretty hard sell to get someone to make an initial contribution if it
> involves learning a whole new VCS; that's a considerable investment of time
> on its own. I wonder if there's something we could do to help people here
> like run a taskcluster task on m-c to produce an artifact containing a
> cinnabar clone archived using git-bundle, and then set up the bootstrap.py
> script to give a choice between mercurial and git using cinnabar, and in the
> git case, do the initial clone by downloading a recent bundle and then
> fetching missing commits. There's probably a good reason that won't work,
> but I'm not sure what it is yet :)

https://bugzilla.mozilla.org/show_bug.cgi?id=1459200 is one step in that
direction. And git-cinnabar version 0.5.0b4 and newer support cloning
from a git reference repo[1]. There is even a mercurial extension[2] to
make this more automated, but git-cinnabar won't try to use it by
default for now. I want to add support for git bundles, or at least
future-proofing for git bundles, first. The reference repo would also
need to be updated frequently.

Mike

1. For example, you can do:
  git -c cinnabar.clone=https://github.com/glandium/gecko clone 
hg::https://hg.mozilla.org/mozilla-unified
2. 
https://github.com/glandium/git-cinnabar/blob/master/mercurial/cinnabarclone.py
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to