On Fri, May 23, 2014 at 08:27:08AM +0100, Andreas Stieger wrote: > > On 23 May 2014, at 01:08, David DL <ddl...@outlook.com> wrote: > > If you don't use the client side tools, how can you maintain in-house > > changes against a series of vendor drops? > > By following the procedure: clean drops in /vendor/foo/current, tag releases > to /vendor/foo/N (1,2,3...). The diff between them can be merged. > Copy current to trunk once. Your own modifications go there only. > For a merge the difference between N-1 and N into that, thus maintaining > in-house changes and bringing them together with releases.
In case the vendor is also using svn, you can even skip the branch in your own repository, and merge from a branch or tags in the vendor's repository directly, unless you really care about merge-tracking or copyfrom history. Quoting 'svn help merge': - Merging from foreign repositories - Subversion does support merging from foreign repositories. While all merge source URLs must point to the same repository, the merge target working copy may come from a different repository than the source. However, there are some caveats. Most notably, copies made in the merge source will be transformed into plain additions in the merge target. Also, merge-tracking is not supported for merges from foreign repositories. Another approach which retains full vendor history is to svnadmin dump the vendor repository (or a to-svn conversion thereof) and import incremental dumps within a subtree in your repository using the --parent-dir option of 'svnadmin load'. Then merge from there.