I have this setup where in my development copy i can commit changes on a certain file to the repository. Then in my production copy, which does checkouts only, i would normally edit this file because this contains references which are environment independent. Is there any way i can ignore this file on the subsequent checkouts/updates without using svn:ignore? More like a --ignore-files /projectroot/config.php or --ignore-files -F ignoredfiles.txt flag.
I would suggest renaming the file in the repository from config.php to config.php.sample. This is the file that you would edit to change the default options. For deployment, either to your development environment or to the production server, you would copy config.php.sample to config.php and edit it without worrying about future conflicts.
Another solution is maintaing all the configuration files for every environment in SVN. Depending on the value of an environment variable, only some files are used.
Advantages:
1. All files in SVN.
2. No copy of files in deploy/checkouts/updates...
Disadvantages:
1. All files in SVN.
2. There is an environment variable.
An alternative workaround is to use the tsvn:ignore-on-commit property. It will make files always start off unchecked in TortoiseSVN's commit dialog. If you'd want to commit it, you need to manually check it.
http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-commit.html (bottom of the page)