Добрый день, Я контролирую репозиторий SVN с файлами .sql более 10 тыс. Необходимо обновлять номер версии внутри файла всякий раз, когда происходит коммит. Чтобы решить эту проблему, я запустил эту строку для каждого существующего файла.
svn propset svn:keywords "Id" filename.sql
Это сработало, и я смог увидеть правильное расширение $Id$ в файлах с $Id$.
Затем, чтобы убедиться, что это свойство было установлено для новых файлов, я изменил свой локальный файл конфигурации svn, чтобы он содержал
enable-auto-props = yes
*.sql = svn:keywords = "Id";
Это также работало для всех моих первоначальных тестов, поскольку казалось, что новые файлы также должным образом расширялись. Но после дальнейшего тестирования кажется, что некоторые новые файлы не расширяют $Id$. Это вызывает проблемы, поэтому я попытался выяснить, почему некоторые из них не расширяются. Для проверки я создал фиктивный файл, содержащий $Id$, и добавил/зафиксировал (используя TortoiseSVN) этот файл в несколько разных каталогов и обнаружил смешанные результаты. (Нет означает, что $Id$ не расширился, Да означает, что расширился)
NO: Breakfix\DB\schema\MasterMind\nonMAS\grants\testSVN.sql
YES: Breakfix\EnvSetup\testSVN.sql
YES: Breakfix\DB\schema\MasterMind\testSVN.sql
YES: Breakfix\DB\schema\MasterMind\nonMAS\testSVN.sql
NO: Breakfix\DB\schema\MasterMind\nonMAS\indexes\testSVN.sql
NO: Breakfix\DB\schema\MasterMind\nonMAS\Scripts\testSVN.sql
NO: Breakfix\DB\schema\MasterMind\nonMAS\triggers\testSVN.sql
YES: Trunk\DB\schema\MasterMind\nonMAS\grants\testSVN.sql
YES: Trunk\DB\schema\MasterMind\nonMAS\Objects\testSVN.sql
Мой вопрос: каковы возможные причины того, почему $Id$ не расширяется в некоторых каталогах, как в других в том же репозитории SVN?
Примечание: svn propget возвращает «Id» для файлов, которые сработали, а для файлов, которые не сработали, svn propget возвращает «Заголовок».
Любые советы или предложения будут очень признательны!
Спасибо
Решено! Я рассматривал эту проблему в течение нескольких месяцев, но, наконец, понял это. Эта статья от Tortoise SVN помогла. https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-propertypage.html
Оказывается, мой предшественник настроил некоторые svn:keywords, основанные на папках. По этой причине у меня не работали некоторые папки. Я смог перейти в родительскую папку всего и настроить глобальное ключевое слово svn:, и теперь это работает для всех.