Может ли SVN решать проблемы чувствительности к регистру? - PullRequest
11 голосов
/ 27 февраля 2009

Есть ли способ заставить SVN быть нечувствительным к регистру? У нас есть проблема, при которой пользователь совершает коммит из среды linux с файлами, такими как «file.ext» и «File.ext». Работает просто отлично. Проблема, однако, заключается в том, что пользователь MAC OSX или Windows пытается выполнить обновление / извлечение. Два файла считаются одинаковыми, и действие завершается ошибкой.

Есть ли способ, чтобы SVN вообще предотвращал фиксацию "File.ext" и "file.ext"?

Этот вопрос похож, но смотрит на ту же проблему со стороны Windows, которая здесь не является проблемой.

Ответы [ 4 ]

11 голосов
/ 27 февраля 2009

Вы можете попробовать хук перед фиксацией, такой как этот (сам не пробовал, однако).

Я предполагаю, что заставить ваших пользователей следить за тем, чтобы это уже было исключено? Я все время работаю над Linux, но обычно в именах файлов регистр не учитывается, т.е. е. мне , они одинаковы, независимо от того, что думает ОС.

2 голосов
/ 18 октября 2011

Subversion 1.7 теперь, кажется, обрабатывает , регистр только переименовывает в Windows.

0 голосов
/ 27 февраля 2009

Я думаю, что техническая проблема действительно связана с Mac и Windows, а именно, что их файловые системы не чувствительны к регистру. По крайней мере, на Mac вы можете переформатировать файловую систему как HFS + с включенной чувствительностью к регистру. Я не пользователь Windows, но в родной файловой системе Windows может быть похожая опция (все еще NTFS?).

Если вы не управляете средами разработчика в достаточной степени, чтобы заставить их отформатировать в файловой системе с учетом регистра, то я думаю, что ваши единственные варианты - это ловушка перед фиксацией, которая проверяет наличие дубликатов (очевидно, без учета регистра) имена файлов в том же каталоге или , чтобы изменить проект, чтобы не использовать файлы с одинаковыми именами и разными регистрами в одном каталоге.

0 голосов
/ 27 февраля 2009

Я бы сказал, что вы смотрите на вещи неправильно. Лучшее решение здесь - сохранить ваши файлы с учетом регистра. Что, если пользователь проверяет в Linux или Solaris, проект будет непригодным для использования.

Кроме того, рассмотрим некоторые языковые компиляторы, которые зависят от чувствительности к регистру, компилятор Java будет жаловаться на имена файлов, как я уверен, что другие языки будут.

Еще одна проблема, это развертывание, что делать, если вы развертываете в системе * NIX. Тогда ты в беде!

...