Ответ 1
Если вы хотите иметь репозиторий языкового агностического кода, вопрос о том, какие файлы следует исключать, о том, какие файлы в включить, меньше. Смысл, в языковом агностическом репо должны быть только файлы, необходимые для проекта:
- исходные файлы, библиотеки, файлы свойств,.xml config,...
- встроенный материал, то есть файлы .class, архивы,...
Вы обязательно должны исключить:
- .project - это специфичная для проекта конфигурация eclipse
- .settings - это специфичная для проекта конфигурация eclipse
- .classpath - также специально для eclipse
В Eclipse существует глобальный список игнорирования для файлов, которые совместно используются хранилищами через SVN, CVS и т.д. Вы можете найти его здесь:
Window > Preferences > Team > Ignored Resources
Если вы ищете что-то вне Eclipse, попробуйте конфигурацию global-ignores в вашей локальной конфигурации subversion. Добавьте это в ваш файл ~/.subversion/config.
global-ignores = build *.mode* *.pbxuser *~.nib .DS_Store *~
Помните, что если исключить конфигурацию Eclipse из репозиториев, вам нужно будет настроить свои проекты после проверки более конкретно.
Однако, как вы говорите, вы используете Maven, это не должно представлять для вас слишком много проблем. Если файлы pm.xml проектов maven настроены правильно и полностью, вы можете легко импортировать проект из SVN через "Import as Maven Project" - Eclipse сделает для вас нужную конфигурацию при импорте. (Для этого вам нужен плагин m2Eclipse Maven, но я думаю, вы уже будете использовать что-то подобное? В любом случае, здесь ссылка: http://m2eclipse.sonatype.org/sites/m2e)
Что касается вопроса о script для очистки репо: я не знаю об этом сейчас, и я был бы очень осторожен с этим. Похоже, что все может пойти ужасно неправильно.;)
И последнее, но не менее важное: восстановление рабочей области: По моему опыту, зачастую проще всего удалять свой проект на местном уровне и в новую версию "как проект maven". Таким образом, Eclipse переконфигурирует все важные вещи. Я потратил часы на сломанную конфигурацию Eclipse, иногда она имеет тенденцию просто застревать и не сможет восстановиться - особенно если вы работаете с большим количеством плагинов, которые, как правило, делают некоторые из своих собственных магов конфигурации. (И, случается, это не совсем ошибка...)