The RA layer encapsulates the choice of URL scheme (file://, svn://, and
http://) so the client and server logics don't need to worry about it.
svnserve opens its own sockets, but with libsvn_ra_serf the syscalls
happen in a dependency library (serf).
Bo Chen wrote on Thu, Mar 28, 2013 at 11:11:15 -0400:
> I am just starting to investigate into the source code of SVN.
>
> Can you please give me more introductions for it. In my previous
> experiences for network communication, I can simply establish a network
> connection, and send the information to the server via the socket, and that
> is it. Why SVN is so complicated for it, e.g., depends on the RA layer?
>
> Thanks.
>
> Bo
>
> On Thu, Mar 28, 2013 at 10:56 AM, Daniel Shahaf <danielsh_at_elego.de> wrote:
>
> > Bo Chen wrote on Thu, Mar 28, 2013 at 10:53:24 -0400:
> > > I am struggling to locate the source code by which the SVN client can
> > > transfer the delta to the server upon a commit operation. Can anyone give
> > > me some hints for it, e.g., which source file file is responsible to
> > > transferring the delta (after the delta has been computed) to the server
> > ?
> > >
> >
> > That depends on the RA layer. Look in libsvn_ra_* for the
> > "apply_textdelta" function in the commit editor.
> >
> > Is that the answer you were looking for?
> >
> > Daniel
> >
> > > Thanks for help.
> > >
> > > Bo
> >
Received on 2013-03-28 16:17:54 CET