Search code examples
svnsvn-externalssvn-propset

How to do a "svn copy without externals" ?


I have a branch A with externals

I need to copy the content (without the externals) to a tag B. How to proceed ?

I tried,

svn copy A B --ignore-externals 

It did not work. Please note that A and B are complete https paths.


Solution

  • You are misunderstanding what --ignore-externals is for on the copy subcommand. This flag only affects working-copy operations. When you copy one working-copy path to another, it prevents svn from processing all the svn:externals properties on copied items to check out their targets. It does not prevent svn from copying the properties themselves; those get copied along with the folders they have been set on. Removing those properties would be a change to the copied objects, and svn does not change objects while it copies them.

    You will either need to check out your tag, remove the externals, and commit; or, do the copy within your working copy, and edit to remove the externals prior to commit.