Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Преобразование регистра файлов
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Altium Designer, DXP, Protel
aspID
Суть в том, что при открытии файла или проекта AD преобразует его имя в то же самое, но "большими буковками". Если это проект, то файлы, включенные в проект остаются без изменений. Но если их открывать явно, то имеет место такое же преобразование.

Так, например, TKeeper_PCB_Proj.PrjPcb при открытии становится TKEEPER_PCB_PROJ.PRJPCB
При сохранении регистр букв меняется на "заглавные". Все бы еще ничего и терпимо, но после того, как начинаешь использовать версирование (в частности, я пользуюсь Subversion) начинаются проблемы - есть два файла с РАЗНЫМИ именами (естественно, считается, что File.Abc и FILEW.ABC - это разные файлы) но при этом Windows не может их обрабатывать - для нее-то они "одинаковые"...

В опциях и документации ничего к данному вопросу относящегося отыскать не смог. Если кто сталкивался или имеет какие-либо соображения по данному поводу, просьба поделиться. Заранее благодарю.


P.S.
Неужели данная проблема имеет место быть только у меня? Или, может, это особенность версии 6.7 (раньше просто не обращал внимания?)
aspID
Забавное наблюдение - если AD был открыт заранее, то преобразование не происходит. А вот если его запуск происходит от щелчка по иконке проекта или документа - тогда вышеописанный глюк...
Gennaj
Абсолютно верно, есть такой глюк.
Мы тоже используем SVN и тоже нарвались на такую "бяку".
Наш метод борьбы чисто административный: всем было приказано называть файлы проектов (то есть, файлы *.PRJPCB) только большими буквами, включая расширение, и не открывать отдельные листы схем или печатных плат. То есть, хочешь работать со схемой или платой - запусти весь проект. Преобразуется имя только того файла, на котором был щелчок мышкой, вызвавший запуск Альтиума.
Не происходит преобразования имени, если файл открывается при уже запущенном Альтиуме (способ открытия файла при этом значения не имеет - что из Альтиума, что из "Проводника").
aspID
Спасибо, тогда и пытаться не буду переставлять...
Думаю над другим - можно ли научить SVN быть Case Insensitive
Gennaj
Цитата(aspID @ Feb 21 2008, 10:13) *
Думаю над другим - можно ли научить SVN быть Case Insensitive

Интересная мысль. Пожалуй, это было бы хорошее решение.
Если что-нибудь получится, не забудьте написать о результатах.
aspID
Пока нашел только вот это.
Из FAQ:
Цитата
How do I change the case of a filename?

This problem comes up in two situations. If you're adding files on an operating system with a case-insensitive filesystem, such as Windows, you might find you accidentally add a file with the wrong case in the filename. Alternatively, you may just decide to change the case of an existing file in the repository.

If you're working in a case-sensitive file system, this is no problem at all. Just move the file to the new name, e.g.,
svn mv file.java File.java

But this won't work in a case-insensitive operating system like Windows. In Windows you can accomplish this by copying the file somewhere temporary, deleting the file from Subversion, then adding the copy with the correct case. Or a better way is to perform a move operation with Subversion URLs. Using URLs is recommended, because it will preserve history for the file, and will take effect immediately.

Both ways will leave Windows working copies with problems, however, because Windows can still get confused when trying to update the conflicting filenames. (You'll get a message like svn: Failed to add file 'File.java': object of the same name already exists). One way of fixing the problem is to delete your working copy and check out again. If you do not want to do this, you must perform a two step update.

For each file with the wrong case, the following command will change the case:
svn mv svn://svnserver/path/to/file.java svn://svnserver/path/to/File.java

To update the working copy, change to the relevant directory and do:
svn update file.java
svn update

The first update will remove file.java from your working copy, the second update will add File.java, leaving you with a correct working copy. Or if you had a lot of problematic files, you can update the working copy this way:
svn update *
svn update

As you can see, adding a file with the wrong case is tricky to fix on an operating system that has a case insensitive filesystem. Do try to get it right when you add the file the first time! To prevent the problem from occurring in the first place, you can create a pre-commit hook that calls the file check-case-insensitive.pl. That file lives in the Subversion source tarball, in the directory contrib/hook-scripts.


Настроить pre-commit на Windows платформе не получается... по крайней мере, пока. Если получится, можно использовать скрипт case-insensitive.pl sad.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.