Как я могу заставить Perforce (P4V) оформить заказ и отправить с окончанием строки Unix?

Я на компьютере с Windows, и в моем P4V workspace:advanced-settings у меня выбрано следующее:

настройка рабочей области

Но я все еще замечаю лишние пробелы в некоторых моих файлах после отправки и проверки на другой машине. Есть ли способ заставить каждую проверку и отправку быть в стиле Unix?

Обратите внимание, я не могу изменять настройки сервера, только мои локальные рабочие области.


person MrDuk    schedule 28.03.2017    source источник


Ответы (1)


Если вы установите для LineEnd значение unix и файлы, которые вы синхронизируете, содержат \r символов, это означает, что кто-то, использующий unix, отправил их в этой форме (т. символов там, отличных от родных окончаний строк). Если вы отправляете файлы в стиле Windows из рабочего пространства в режиме unix, вы говорите, что все рабочие пространства в режиме unix должны иметь окончание строк для этих файлов в стиле Windows. В некоторых случаях это желательно, например, когда вы используете компьютеры Unix для сборки пакетов для систем Windows, но для исходного кода, предназначенного для кросс-платформенного использования, это обычно плохо.

Не так уж сложно просмотреть историю, выяснить, кто это сделал, и выяснить их (или заставить администратора принудительно исправить их настройку LineEnd, чтобы она действительно соответствовала содержимому их рабочего пространства), и я искренне рекомендую сделать это. каждый раз, когда вы запрашиваете файлы unix и получаете файл в стиле win, который вам не нужен. Обычно, если все используют настройку по умолчанию local, все работает нормально.

Что касается исправления файлов, довольно простой способ — изменить LineEnd на share, открыть все файлы для редактирования, а затем отправить их — настройка share заставляет удалять все символы \r при отправке, как если бы вы запускали dos2unix все ваши файлы каждый раз, когда вы их отправляли.

person Samwise    schedule 28.03.2017