Gregory Szorc <g...@mozilla.com> writes:

> I'm trying to learn more about how the people who use Git for
> Firefox/Gecko development manage interacting with repositories that
> have their canonical home in Mercurial (mozilla-central, Try,
> etc). I'm doing this to ensure the replacement Try architecture will
> be usable by Git users.
>
> I'm looking for more information and trying to tease out the relative
> popularity and pain points of the technical solutions for the
> following tasks:
>
> a) Landing code to inbound, fx-team, aurora, etc

I have an git alias

 hg-format-patch = !sh -c 'git format-patch -kp -U8 "$@"|tee /dev/stderr|xargs 
git-patch-to-hg-patch' git

So I could use |git hg-format-patch -<n>| or |git hg-format-patch <ref>|
as using |git format-patch|. That also ensures the generated patch has
enough lines of context. I think git-patch-to-hg-patch is from moz-git-tools.

The generated patches could then be upload to bugzilla for review or
applied to a canonical hg repo and push.

> b) Pushing to Try

git hg-format-patch mozillaorg/master
cd $hg;
hg qimport $git/*.patch
hg qpush -a
hg try -m'try syntax'

> c) Fetching new commits

git remote update

> d) Collaborating/sharing commits with others, especially hg<->git
> sharing

changes are published to github. Collectors usually pull directly from
github or use patches attached to bugzilla.

Kanru

> I found https://etherpad.mozilla.org/moz-git-tools and the like-named
> GitHub repo with a suite of Mozilla-centric Git commands. These seem
> to be largely based on top of low-level patch format conversion and
> make little attempt (if any) to preserve commit SHA-1 mappings to
> enable bi-directional conversion (i.e. they are unidirectional, lossy
> tools). Many of them seem to have `hg` invocations buried under the
> covers.
>
> I'm interested in knowing how people feel about these "hidden hg"
> tools. Is going through a hidden, local hg bridge seamless?
> Satisfactory? Barely tolerable? A horrible pain point? (I noticed some
> of the hg interactions in moz-git-tools aren't optimal. If these are
> important tools, please ping me off list so I can help you improve
> them.)
>
> Is moz-git-tools the de facto standard for Mozilla developers? Are
> there other competing tools?
>
> Does anyone use hg-git (it has gotten *much* faster in the past year
> thanks to Facebook's investment)?
>
> I'm particularly interested in knowing if any Git developers have been
> able to eliminate local hg completely. i.e. you are fetching and
> pushing from/to Git repos exclusively. If so, what are you using? What
> limitations do you have?
>
> Overall, how happy are you with your Git fetch/push workflows? Short
> of switching the canonical repositories to Git, what do you need to be
> more productive?
>
> I'm asking all these questions because I'm helping design the
> replacement architecture for Try and the more optimal solutions that
> will deliver a faster and better user experience tend to be easier to
> implement for Mercurial and may partially preclude Git because, well,
> Git just doesn't have the extensibility points as Mercurial (yay
> extensions and dynamic programming languages). I'm not saying Git
> users would be locked out: I'm just saying that having Mercurial
> running locally and "proxying" certain actions through Mercurial (like
> Try pushes) keeps more options on the table. It also means we have to
> design, implement, and maintain 1 server interface instead of 2. From
> my perspective, I like the server-side simplicity. But I'm also
> largely ignorant of what Git users are going through. I'm trying to
> gauge whether additional effort is warranted to placate the Git
> crowd. I'd like to gauge things like e.g. how loudly people would
> scream if one day I announced that pushing to Try will require a
> Mercurial extension. (If that day comes, the carrot would be near
> instantaneous pushes with no contention and infinite server-side
> scalability to millions of pushes.)
>
> Gregory
> _______________________________________________
> dev-platform mailing list
> dev-platform@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-platform
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to