Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [egit-dev] Using EGit for client/server sync

Hi Shawn,

sorry for reusing an unrelated thread. I just hit the reply button and did not realize that :-(.

Anyway thanks for your answer.

Olivier

On Wed, Feb 17, 2010 at 1:38 PM, Shawn O. Pearce <spearce@xxxxxxxxxxx> wrote:
First, please don't hijack a thread to start something completely
unrelated.  It is more friendly to begin a new thread when the
topic is something completely new.

Olivier Smadja <osmadja@xxxxxxxxx> wrote:
> we are building a synchronization system between an handset application and
> a remote database server where the handset application must be able to run
> in offline mode and send its changes to the server (and receive changes from
> the server) where it connects to the network. We are analyzing the
> possibility of using egit to compute client/server differences and merges.
>
> As you are the experts for EGit, we thought the best place to ask for some
> information would be here. Do you think it is possible to implement this
> using egit as a backend?

You probably don't want to use EGit directly, you probably are
more interested in JGit.  JGit is the library that provides EGit
its network communication and its difference and merge logic.

As to whether or not JGit is suitable to your needs, I don't know.
It depends on what this database server is and the exact data you
are trying to move between the systems.  My initial guess is "no".

JGit's network protocols and file formats are based on the Git
version control system, where every node in the communication has
the same data, a complete copy of the project history from the
beginning of time.  A handset has limited storage space.  Data from
6 months ago is probably not relevant to your application, but Git
(and thus JGit) would want to keep a copy of that old data on the
handset anyway.

I think there are probably other tools more suited to your needs.
I don't know of any off the top of my head, but you probably want
something that does SQL database record migration.  E.g. uses
triggers in the databases to log changes, and then sends those
changes when the peers connect.  Actually, I remember working with
a commerical Oracle product many years ago that did exactly that,
for databases on portable devices.

--
Shawn.
_______________________________________________
egit-dev mailing list
egit-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/egit-dev


Back to the top