1

Does anyone know where the actual merge take place when using SVN.(E.g on commit) Is it on server side or at the client?

At our work we are discussion to move from svn:// to svn over http:// but one of the questions still needed an answer is if we are moving the actual svn logic from server to client?

3 Answers3

3

The merge is done as mentioned on client side which means in your working copy. What you are trying to do is to change the access protocol of your svn-server from svn to http....but this will not change the behavior during merging and no logic will moving from server to client, cause it's already on the client.

khmarbaise
  • 92,914
  • 28
  • 189
  • 235
  • Hello Sir, could you please take a look at my question [here](http://stackoverflow.com/q/36157555/3287204)? Thanks in advance ... :) – Yash Sampat Mar 24 '16 at 16:20
  • Didn't i explained that. On the client side and afterward you do a commit. – khmarbaise Mar 24 '16 at 16:36
  • Actually I wanted your feedback on my specific problem in [this question](http://stackoverflow.com/q/36157555/3287204) ... :) – Yash Sampat Mar 24 '16 at 16:38
1

Merge is on the client side and depends on the tool you have installed, some are better that the others.

dain
  • 6,475
  • 1
  • 38
  • 47
0

The merge is performed by the client and stored in the working copy:

Synopsis
    svn merge sourceURL1[@N] sourceURL2[@M] [WCPATH]
    svn merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]
    svn merge [[-c M]... | [-r N:M]...] [SOURCE[@REV] [WCPATH]]

Source: http://svnbook.red-bean.com/nightly/en/svn.ref.svn.c.merge.html

In the end, all that repository sees when you finally commit is a regular changeset that happens to have some svn:mergeinfo properties.

The protocol you choose to reach the repository only affects stuff like access control or the libraries used to run hooks and manipulate the database (both svn: and http: will use the server library you've set up).

Álvaro González
  • 142,137
  • 41
  • 261
  • 360