Переместить в SVN изменил новые строки - PullRequest
0 голосов
/ 19 января 2012

Мы только что перенесли наше репозиторий cvs в collabnet svn, и теперь все файлы, похоже, имеют \ n вместо \ r \ n

Есть ли способ изменить это? Боюсь, это может привести к незначительным ошибкам в нашем приложении.

Мы используем ankhsvn Client в visual studio.

Ответы [ 3 ]

2 голосов
/ 19 января 2012

Вы можете указать eol-style для источников в Subversion:

svn propset svn:eol-style native <path-to-source-file>

Есть и другие опции, кроме native.From svnbook :

  • native

    Этот файл содержит маркеры EOL, которые являются родными для операционной системы, в которой Subversionбыл запущен.Другими словами, если пользователь на машине Windows извлекает рабочую копию, которая содержит файл со свойством svn: eol-style, установленным в native, этот файл будет содержать маркеры CRLF EOL.Пользователь Unix, извлекающий рабочую копию, которая содержит тот же файл, увидит маркеры LF EOL в своей копии файла.Обратите внимание, что Subversion будет на самом деле хранить файл в хранилище с использованием нормализованных маркеров LF EOL независимо от операционной системы.Это в основном прозрачно для пользователя.

  • CRLF

    Это заставляет файл содержать последовательности CRLF для маркеров EOL, независимо отИспользуемая операционная система.

  • LF

    В этом файле содержатся символы LF для маркеров EOL независимо от используемой операционной системы.

  • CR

    В этом файле содержатся символы CR для маркеров EOL независимо от используемой операционной системы.Этот стиль окончания строки не очень распространен.Он использовался на старых платформах Macintosh (на которых Subversion даже не работал).

1 голос
/ 19 января 2012

Для каждого клиента глобально вы можете в файле конфигурации определить некоторые авто-свойства (которые будут применяться ко всем рабочим копиям), svn: eol-style является одним из хороших кандидатов

раздел [auto-props],см. комментарии в файле по умолчанию для

# *.c = svn:eol-style=native
# *.cpp = svn:eol-style=native
0 голосов
/ 20 января 2012

Я полагаю, что cvs мог сохранять все файлы с помощью \n, а наш плагин cvs для Visual Studio менялся на \r\n, поэтому, когда я делал преобразование, я должен был использовать опцию --default-eol=CRLF.

Кажется, файлы, которые мы конвертируем в \r\n и фиксируем, остаются с \r\n, так что это здорово. Возможно, мне просто нужно оформить заказ, все изменить и заново зафиксировать.

...