Mercurial конвертирует изменения концовок строк?

Я использую расширение Mercurial Convert для импорта данных из репозитория PerForce. Кажется, что преобразование работало корректно, но все конечные строки Windows (CRLF) были заменены окончанием unix (LF).

Есть ли способ заставить это расширение оставить только концы строк?

Ответ 1

В то время как само преобразование может изменить стиль eol, вы все еще можете в своем новом репо Hg указать, какой eol вы хотите видеть для определенных типов файлов при оформлении заказа:
См. EolExtension.

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

Ответ 2

Я смог сделать то, что хотел, используя расширение Perfarce для Mercurial. Окончания строки для меркуриального репозитория будут соответствовать настройкам свойства "LineEnd" рабочего пространства Perforce, которое вы используете. Шагами были следующие (в Windows):

  • Клонировать репозиторий Perfarce (https://www.mercurial-scm.org/wiki/PerfarceExtension)
  • В файле mercurial.ini вашей папки пользователя добавьте информацию о конфигурации, описанную https://www.mercurial-scm.org/wiki/PerfarceExtension
  • Создайте рабочее пространство Perforce, которое отображает нужные части репозитория Perforce в корневую папку для рабочей области на локальном компьютере.
  • Обновить локальную рабочую область
  • Откройте командную строку в родительской папке желаемой папки с хранилищем ртути
  • установить P4PASSWD = your_perforce_password
  • установить P4USER = your_perforce_username
  • hg clone p4://perforce_server_ip: perforce_server_port/your_perforce_workspace_name destination_folder

Полученный файл hgrc для этого репозитория настроен на то, чтобы вытащить дополнительные изменения из репозитория Perforce, поэтому его можно было бы использовать на постоянной основе, но я не использовал его.