MATLAB® обеспечивает встроенную интеграцию SVN для использования с Subversion® (SVN) песочницы и репозитории. Поскольку реализация встроена к MATLAB, вы не должны устанавливать SVN. Встроенная поддержка интеграции SVN защищает имя для входа в систему. Это интегрирование игнорирует любую существующую установку SVN.
Использовать версию SVN предоставило MATLAB, когда вы получаете файл из системы контроля версий, выберите SVN
в списке Source control integration. Для инструкций смотрите выезд от репозитория SVN. Когда вы создаете новую песочницу с помощью MATLAB встроенное интегрирование SVN, новая песочница использует последнюю версию SVN, обеспеченного MATLAB.
Внимание
Перед использованием системы контроля версий необходимо зарегистрировать двоичные файлы с инструментами системы контроля версий, чтобы избежать повреждения. Смотрите Регистрируют Двоичные Файлы с SVN.
Если необходимо использовать версию SVN кроме встроенной версии, можно создать репозиторий с помощью Command-Line SVN Integration (compatibility mode)
Опция Source control integration, но необходимо также установить клиент SVN командной строки.
Интегрирование SVN командной строки передает с любой Subversion (SVN) клиент, который поддерживает интерфейс командной строки. С Command-Line SVN Integration (compatibility mode)
, при попытке переименовать файл или папку к имени, которое содержит символ @, ошибка происходит, потому что SVN командной строки обрабатывает все символы после символ как значение версии штепселя.
Если вы используете инструменты управления из независимого источника, необходимо указать MATLAB и расширения файла Simulink®, такие как .mlx
, .mat
, .fig
, .mlapp
, .mdl
, .slx
, .mdlp
, .slxp
, .sldd
, и .p
как двоичные форматы. Если вы не указываете расширения, эти инструменты могут повредить ваши файлы, когда вы представляете их путем изменения символов конца линии, расширения лексем, замены ключевыми словами или попытки автообъединить. Повреждение может произойти, используете ли вы инструменты системы контроля версий за пределами MATLAB или при попытке представить файлы из MATLAB без первой регистрации ваших форматов файлов.
Также проверяйте, что другие расширения файла указаны как двоичный файл, чтобы избежать повреждения при регистрации. Проверка и регистровые файлы, такие как файлы MEX, .xlsx
, .jpg
, .pdf
, .docx
, и т.д.
Необходимо зарегистрировать двоичные файлы, если вы используете какую-либо версию SVN, включая встроенную интеграцию SVN, обеспеченную MATLAB. Если вы не указываете свои расширения как двоичный файл, SVN может добавить аннотации в противоречивые файлы MATLAB и делать попытку автослияния. Избегать этой проблемы при использовании SVN, расширений регистрового файла.
Найдите свой SVN config
файл. Ищите файл в этих местоположениях:
или C:\Users\myusername
\AppData\Roaming\Subversion\config
на Windows®C:\Documents and Settings\myusername
\Application Data\Subversion\config
~/.subversion
на Linux® или macOS
Если вы не находите config
файл, создайте новый. Смотрите Создают Файл конфигурации SVN.
Если вы находите существующий config
файл, вы ранее установили SVN. Отредактируйте config
файл. Смотрите Обновление Существующий Файл конфигурации SVN.
Если вы не находите SVN config
файл, создайте текстовый файл, содержащий эти линии:
[miscellany] enable-auto-props = yes [auto-props] *.mlx = svn:mime-type=application/octet-stream *.mat = svn:mime-type=application/octet-stream *.fig = svn:mime-type=application/octet-stream *.mdl = svn:mime-type=application/octet-stream *.slx = svn:mime-type= application/octet-stream *.mlapp = svn:mime-type= application/octet-stream *.p = svn:mime-type=application/octet-stream *.mdlp = svn:mime-type=application/octet-stream *.slxp = svn:mime-type=application/octet-stream *.sldd = svn:mime-type=application/octet-stream *.slxc = svn:mime-type=application/octet-stream *.mlproj = svn:mime-type=application/octet-stream *.mldatx = svn:mime-type=application/octet-stream *.slreqx = svn:mime-type=application/octet-stream *.sfx = svn:mime-type=application/octet-stream *.sltx = svn:mime-type=application/octet-stream
Проверяйте на другие типы файлов, вы используете это, также необходимо указать как двоичный файл, чтобы избежать повреждения при регистрации. Проверяйте на файлы, такие как файлы MEX (.mexa64
, .mexmaci64
, .mexw64
), .xlsx
, .jpg
, .pdf
, .docx
, и т.д. Добавьте линию на config
файл для каждого типа файла вам нужно. Примеры:
*.mexa64 = svn:mime-type=application/octet-stream *.mexw64 = svn:mime-type=application/octet-stream *.mexmaci64 = svn:mime-type=application/octet-stream *.xlsx = svn:mime-type=application/octet-stream *.docx = svn:mime-type=application/octet-stream *.pdf = svn:mime-type=application/octet-stream *.jpg = svn:mime-type=application/octet-stream *.png = svn:mime-type=application/octet-stream
Назовите файл config
и сохраните его в соответствующем месте:
или C:\Users\myusername
\AppData\Roaming\Subversion\config
на WindowsC:\Documents and Settings\myusername
\Application Data\Subversion\config
~/.subversion
на Linux или macOS.
После того, как вы создаете SVN config
файл, SVN обрабатывает новые файлы с этими расширениями как двоичный файл. Если у вас уже есть двоичные файлы в репозиториях, смотрите Регистровые файлы Уже в Репозиториях.
Если вы находите существующий config
файл, вы ранее установили SVN. Отредактируйте config
файл к регистровым файлам как двоичный файл.
Отредактируйте config
файл в текстовом редакторе.
Найдите [miscellany]
разделите и проверьте, что следующая линия включает auto-props
с yes
:
enable-auto-props = yes
#
). Файлы конфигурации могут содержать линии в качестве примера, которые комментируются. Если существует #
символ в начале линии, удалите его.Найдите [auto-props]
раздел. Убедитесь, что [auto-props]
не прокомментирован. Если существует #
символ вначале, удалите его.
Добавьте следующие линии в конце [auto-props]
раздел:
*.mlx = svn:mime-type=application/octet-stream *.mat = svn:mime-type=application/octet-stream *.fig = svn:mime-type=application/octet-stream *.mdl = svn:mime-type=application/octet-stream *.slx = svn:mime-type= application/octet-stream *.mlapp = svn:mime-type= application/octet-stream *.p = svn:mime-type=application/octet-stream *.mdlp = svn:mime-type=application/octet-stream *.slxp = svn:mime-type=application/octet-stream *.sldd = svn:mime-type=application/octet-stream *.slxc = svn:mime-type=application/octet-stream *.mlproj = svn:mime-type=application/octet-stream *.mldatx = svn:mime-type=application/octet-stream *.slreqx = svn:mime-type=application/octet-stream *.sfx = svn:mime-type=application/octet-stream *.sltx = svn:mime-type=application/octet-stream
Проверяйте на другие типы файлов, вы используете это, также необходимо указать как двоичный файл, чтобы избежать повреждения при регистрации. Проверяйте на файлы, такие как файлы MEX (.mexa64
, .mexmaci64
, .mexw64
), .xlsx
, .jpg
, .pdf
, .docx
, и т.д. Добавьте линию на config
файл для каждого типа файла вы используете. Примеры:
*.mexa64 = svn:mime-type=application/octet-stream *.mexw64 = svn:mime-type=application/octet-stream *.mexmaci64 = svn:mime-type=application/octet-stream *.xlsx = svn:mime-type=application/octet-stream *.docx = svn:mime-type=application/octet-stream *.pdf = svn:mime-type=application/octet-stream *.jpg = svn:mime-type=application/octet-stream *.png = svn:mime-type=application/octet-stream
Сохраните config
файл.
После того, как вы создаете или обновляете SVN config
файл, SVN обрабатывает новые файлы как двоичный файл. Если вы уже имеете файлы в репозиториях, указываете их как описано в Регистровых файлах Уже в Репозиториях.
Внимание
Изменение SVN config
файл не влияет на файлы, уже согласился на репозиторий SVN. Если файл не зарегистрирован как двоичный файл, используйте svn propset
вручную зарегистрировать файлы как двоичный файл.
Чтобы вручную зарегистрировать файл в репозитории как двоичный файл, используйте следующую команду с SVN командной строки:
svn propset svn:mime-type application/octet-stream binaryfilename
Создайте свой репозиторий со стандартным tags
, trunk
, и branches
папки и файлы выезда от trunk
. Проект Subversion рекомендует эту структуру. См. https://svn.apache.org/repos/asf/subversion/trunk/doc/user/svn-best-practices.html.
Если вы используете MATLAB, чтобы создать репозиторий SVN, он создает стандартную структуру репозитория. Чтобы позволить пометить, репозиторий должен иметь стандартный trunk/
и tags/
папки. После того, как вы создадите репозиторий с этой структурой, можно нажать Tag в контекстном меню Source Control, чтобы добавить теги во все файлы. Для получения дополнительной информации смотрите Версии Тега Файлов.
С SVN можно использовать теги, чтобы идентифицировать определенные версии всех файлов. Чтобы использовать теги с SVN, вам нужна стандартная структура папок в вашем репозитории, и необходимо получить файлы из trunk
. Смотрите стандартную структуру репозитория.
Щелкните правой кнопкой по Браузеру текущей папки и выберите Source Control> Tag.
Задайте текст тега и нажмите Submit. Тег добавляется к каждому файлу в папке. Ошибки появляются, если у вас нет tags
папка в вашем репозитории.
Примечание
Можно получить теговую версию файлов от системы контроля версий, но вы не можете пометить их снова с новым тегом. Необходимо получить из trunk
создать новые теги.
Чтобы потребовать, чтобы пользователи не забыли получать блокировку на файлах перед редактированием, сконфигурируйте SVN к make-файлам с заданными расширениями, только для чтения. Когда ваши файлы только для чтения, необходимо выбрать Right-click в Браузере текущей папки и выбрать Source Control> Get File Lock, прежде чем можно будет отредактировать их. Эта установка предотвращает редактирование файлов, не получая блокировку файла. Когда файл имеет блокировку, другие пользователи знают, что файл редактируется, и можно избежать проблем слияния.
Чтобы осуществить файлы блокировки, измените записи в SVN config
файл. Определять местоположение вашего SVN config
файл, смотрите, Регистрируют Двоичные Файлы с SVN.
К make-файлам с .m
расширение, только для чтения, добавляет свойство в ваш SVN config
файл в [auto-props]
раздел. Если нет никакой записи для файлов с .m
расширение, добавляют один с needs-lock
свойство.
*.m = svn:needs-lock=yes
Если запись существует, можно комбинировать свойства в любом порядке, но многократные въезды должны быть на одной строке, разделенной точками с запятой.
К make-файлам с .mlx
расширение, только для чтения, добавляет свойство в ваш SVN config
файл в [auto-props]
раздел. Поскольку вы должны регистровые файлы с .mlx
расширение как двоичный файл, существует запись для типа файла. Добавьте needs-lock
свойство к записи в любом порядке, но на той же линии и разделенный точкой с запятой.
*.mlx = svn:mime-type=application/octet-stream;svn:needs-lock=yes
Воссоздайте песочницу для настройки, чтобы вступить в силу.
С этой установкой необходимо выбрать Get File Lock, прежде чем можно будет отредактировать файлы с .m
расширение. Смотрите Получают Блокировки Файла SVN.
Можно задать местоположение репозитория с помощью file://
протокол. Однако документация Subversion строго рекомендует что только однопользовательский доступ репозиторий непосредственно через file://
URL. Смотрите веб-страницу:
Внимание
Не позволяйте многому пользователю получать доступ к репозиторию непосредственно через file://
URL или вы рискуете повреждать репозиторий. Используйте file://
URL только для однопользовательских репозиториев.
Знайте об этой осторожности, если вы используете MATLAB, чтобы создать репозиторий. MATLAB использует file://
протокол. Создание новых репозиториев обеспечивается для локального, однопользовательского доступа только для тестирования и отладки. Доступ к репозиторию через file://
URL медленнее, чем использование сервера.
Когда это необходимо, чтобы совместно использовать репозиторий, необходимо настроить сервер. Можно использовать svnserve
или модуль SVN Apache™. Смотрите ссылки веб-страницы: