> I'm not quite sure if you really understand the impact of svn:ignore.
> What behaviour are you expecting from the svn:ignore mechanism exactly,
> and how would the expected behaviour impact your workflow?
We want the unversioned files to not show in svn status or in
tortoiseSVN's "Add" command when invoked on directories which contain
unversioned files. I'll talk to other devs to see if there are other
expected behaviors.
> Based on past experience, I would guess that this is probably not as
> simple as you imagine it to be, unfortunately. You are talking about
> a major feature addition, not some small fix.
>
> Subversion has no concept of an unversioned property yet.
> Such a concept would need to be added first which would require some design
> and implementation effort. A lot of work would need to be done to make sure
> this new kind of property interacts well with all other features of the
> system (status, diff, commit, update, ...). That means writing a lot
> regression tests to start with.
>
> This might turn out to be about as "simple" as the "file external" feature
> turned out to be. A very simple idea on the surface but very hard to get
> working correctly in all use cases, and we ended up frantically fixing a
> lot of new bugs related to the feature over the course of several months.
Alright, I got the picture. Don't worry, I'll look deeper into the
matter and make a good effort to make things work nicely on our side
before asking for such a feature. See below.
> We do exactly the same thing in Subversion itself, and we do have
> ignore patterns like *.c and so on within the bindings source directories.
> There doesn't seem to be any problem with this in our project.
> This command lists the patterns we use:
> svn propget -v -R svn:ignore https://svn.apache.org/repos/asf/subversion/trunk/subversion/bindings
The problem is that the C files automatically generated for bindings
are often mixed with standard versioned C files... However, after
further inspection here, it seems to me that the binding files could
indeed be put in a separate directory without requiring any code to be
changed. My main concern is with the exported header files, but their
names don't seem to vary much with the target platform and other
compilation options in our system. Maybe I can tell Subversion to
ignore the headers individually and also a special "bindings"
directory containing the implementations. I'm going to investigate
this further, maybe there is a way to adapt our system without
requiring code changes after all. I'll report here soon.
Received on 2012-10-30 18:56:51 CET