I have a repository with these folders, and where I have these goals:
/temp/ <-- I want svn to ignore this
/**/temp <-- I want svn to ignore this ('temp' in any recursive folder, i.e. at any depth level)
/bar/**/temp <-- I want svn to NOT ignore 'temp' anywhere inside 'bar' (at any depth level)
Reading svn:ignore docs, I can't find any syntax that could deal with this problem.
a) Is this doable using tortoise-svn client?
b) What about regular command line svn client?
Your question contains two parts, 1) how to recursively ignore directories and 2) how to not-ignore a certain directory.
The first issue cannot be solved using Subversion's
svn:ignoreproperty as this is evaluated on a per-directory level. Since Subversion v1.8, asvn:global-ignoresproperty is supported which is applied to all subdirectories of a working copy (thanks to user bahrep for pointing it out). Documentation can be found in the Red Bean Book chapter on Ignoring Unversioned Items.At the root of your working copy, you can
or set the property using TortoiseSVN.
The answer to your second issue is already hidden in the linked page's title: you only ignore unversioned items. Once you've
svn add'ed a file or a directory, it will no longer be ignored. Even ifglobal-ignoresorsvn:ignorewould say otherwise.By the way, the evaluation of
svn:ignoreis the same no matter if you're using TortoiseSVN orsvnCLI. The interface is different, the underlying functionality is the same.