Best way for git two-way synchronization

304 Views Asked by At

I'm developing a bi-directional synchronization between Plastic SCM and Git.

I've seen the hg-git Mercurial plugin by Scott Chacon and I've seen it uses a local git repos to perform all operations, instead of directly "calling" the "remote git server".

Well, considering Chacon did it this way, I guess there's no better way to do it but I wanted to ask if there's a way to receive info about commits (revisions) remotely (like, "give me your tree of commits and how they're related so I can check with mines") and also a good way to create a "push" without having a full local git repos. I'm looking into the NGit and lib2git libraries.

Thanks,

pablo

1

There are 1 best solutions below

2
On

You can easily send-pack --thin a selection of revisions. Of course when you are going to use porcelain to isolate trees and blobs for sending, you might just as well skip to a git lib (like NGit, you mentioned), because it will come down to the same, but you can steer clear of perl/bash tangle :)

(bias entirely my own)