Hi Developers,

I'm redirected here from the tortoise mailing list, as they think this
feature belongs to the area of the svn library. Performing some
searches shows that I'm not the only one with this problem, even it it
seems to be never posted here.

The basic problem I have is I have a Project with svn:externals 
defined pointing into the same SVN. When I now make a tortoiseSVN 
commit the files changed inside the svn:externals folders are included 
- so all works great.

If I now try to merge these commit into a other checkout the changes 
inside the svn:externals are not merged, they are silently ignored. I 
need to do a separate merge at the svn:externals folders. Doing so 
works fine, but why having to do this manually? As externals are 
silently included into commits it is easily overseen that a commit 
includes externals at merging. So if these externals are not merged or 
at least warned while merging they will be overseen -> an great source 
for new bugs...

The merge of svn:externals is not done automatically independent of if 
the folder at the merge target is an linked svn:externals folder or a 
real folder.



Now a detailed example for better visualisation:
I have the following svn structure:
svn://svn/test/main/trunc
  svn:external Propery: svn://svn/test/sub/trunc sub
  File: Mainfile.txt
svn://svn/test/sub/trunc Project
  File: Subfile.txt

Now I make a branch and set the svn:external Propery:
svn://svn/test/main/branch1
  svn:external Propery: svn://svn/test/sub/branch1 sub
  File: Mainfile.txt
svn://svn/test/sub/branch1 Project
  File: Subfile.txt


On a Checkout of main Project this will result in the following file structures:
  mainTrunc
  | Mainfile.txt
  | sub
  | | Subfile.txt
  mainBranch
  | Mainfile.txt
  | sub
  | | Subfile.txt


If I make changes at Mainfile.txt and Subfile.txt at main in one 
commit with version 123. To merge these changes to the branch I have 
to do the following:
1. Go to mainBranch folder an merge svn://svn/test/main/trunc version 123
2. Go to mainBranch/sub folder and merge svn://svn/test/sub/trunc version 123
All information required for the 2. merge of the externals folder is 
already known by the tortoise client. It knows there are files at the 
svn://svn/test/sub/trunc folder included at these commit and it knows 
these files are loyally stored at mainBranch/sub folder.



With best regards,
  Marcel Hesselbarth

Reply via email to