tags:

views:

32

answers:

2

Im using SVN at the moment on Mac for iPhone development,and I have accidentally added the build directory to source control, so I thought I would look up how to add folders to the ignore list, and I did find an article on how to do that.

so I ran the command: svn propedit svn:ignore ./build as specified here: http://svnbook.red-bean.com/en/1.1/ch07s02.html

Then pico came up as the editor, and I added * to the first and only line of the file.

Then I hit save, but then I run into a step that no-one seems to talk about, the file name of the file that I just edited... what is it?

I have tried ignore.txt, ignore, and others, but everthing I try doesnt add the build directory (and its sub dirs/files) to the ignore list.

How do I do this?

+1  A: 

svn propedit creates a temporary file containing the current value of the property, and opens this temp file in your editor. You should save the file in place (at the temporary location), not to a new location. When the editor exits, svn propedit will notice that you made changes to the temp file (if you did) and use its contents as the new value of the property.

Vineet
well its not working... :( running the command, then opening the temp file, adding * to it (called svn-prop.tmp) the I get the output `No changes to property 'svn:ignore' on 'build'` and also `No changes to property 'svn:ignore' on '.'`
Mark
+1  A: 

you should set that property to the directory you want the patterns apply to, most likely: .

to quote the doc:

 The solution is to store ignore patterns that are unique to 
 the resources likely to appear in a given directory with the 
 directory itself.

so, the command you are after is:

svn propedit svn:ignore .

your editor should open up (pointing at a temporary file somewhere). you can now change the patterns (eg, add a new line with build on it) and then save it.

akira
ok ive just tried that, and I get this in the output of my terminal: `No changes to property 'svn:ignore' on 'build'` and also `No changes to property 'svn:ignore' on '.'`
Mark
what do I put in the temp file that opens up? *?
Mark
did you `svn commit` the added `build` directory already? did you `svn revert build` to revert the adding yet?
akira
I have committed the build directory once, and no I did not revert anything yet
Mark
i changed my answer a bit to reflect `svn propedit` (i was thinking ``svn propset`). nevertheless: you have to `svn remove build` as well to get rid of the what you have commited already. it is now part of the history (the repository). if you want to get rid of it COMPLETELY then you would have to `svnadmin dump` the repository and `svndumpfilter` the wrongly commited stuff.
akira
bah, how freaking annoying, why cant I just tell it to ignore the build directory? the `svn remove build` keeps giving me heaps of errors, probably because the build dir is constantly being removed and rebuilt up again `svn: 'build/Debug-iphonesimulator' is in the way of the resource actually under version control` is one of the errors...
Mark
just telling the client tools (`svn xyz`) to not display something does not make the content commited to the repository go away. stop your build process for a moment, remove the `build` directory completely and make a `svn update` (which checks out the commited `build` directory). then you can `svn remove build`. you could also `svn remove http://..../build` directly on the server, if you know the remote address (`svn info`)
akira
ok that seemed to work, thanks akira, you'll get the points here :) Although I still think that I should be able to tell my client to igonre a directory easier than that... IMO
Mark