My experience with a bidirectional mirror:
On 05/30/2013 07:11 PM, Ehsan Akhgari wrote:
Nicolas (nbp) built <https://github.com/nbp/git-hg-bridge> a while ago, and
while the existing implementation is not good enough for a scale of multiple
developers using it, I have had plans to fix that (unfortunately I never
gotten around to document that...) I would be happy to share more details
if needed.
As Eshan mentioned, in its current version, this does not scale because the
current design use file system locks to prevent multiple modifications of
the hg-side of the bridge. Also pushes are taking way more time as the
mirrored repositories have more changesets / commits, this was not the case
back in 2011.
The maintenance overhead that I had with this git-hg-bridge is about ~14
days since I started this project. Most of it being caused by the lack of
knowledge of mercurial, some errors in hg-git conversions and the migration
to add CVS history.
With this tool finalized, we can push to hg through git (in an entirely
transparent manner).
I have been using this git bridge since December 2011.
Currently, I am mirroring inbound, central, aurora and beta. I made a few
shell script to commit branches to try using this mirror. My local git
repository has 386 branches (I should probably clean-up one day).
I am using top-git to work on my patches, where each branch represent one
patch. I am doing back-up of my work on my personal server, and sharing a
few branches through a Github clone. Also, the git repository that I am
using contains the CVS history.
The only case where I am still using mercurial is when I need to commit
patches for someone else, as I want to avoid adding mistakes by importing a
patch in git (which does not understand mercurial meta-data).
On 05/30/2013 05:56 PM, Johnny Stenback wrote:
> [TL;DR, I think we need to embrace git in addition to hg for
> Firefox/Gecko hacking, what do you think?]
>
> 1: Embrace both git and hg as a first class DVCS.
> 2: Switch wholesale to git.
I love git flexibility, still I can understand that people like mercurial
simplicity and tools that already exists on top of mercurial. I do not
recommend completely switching to git.
I think maintaining both is a good way to bring more contributors, and not
necessary git users. Based on my experience the mirror it-self is not a big
source of trouble. On the other hand, I have no idea of the over head of
doing that across multiple mirrors as we currently do with mercurial
repositories.
--
Nicolas B. Pierron
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform