[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Vendor branches: Current guidance?

From: Stefan Sperling <stsp_at_elego.de>
Date: Fri, 23 May 2014 09:53:39 +0200

On Fri, May 23, 2014 at 08:27:08AM +0100, Andreas Stieger wrote:
> > On 23 May 2014, at 01:08, David DL <ddl877_at_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.
Received on 2014-05-23 09:54:21 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.