Здесь есть несколько уровней (очень) негерметичной абстракции.
Во-первых, существует сервер, который может хранить файлы на сервере Perforce.
Во-вторых, клиент перформанса может искажать символы новой строки.
В-третьих, скрипт python может искажать символы новой строки (маловероятно).
В-четвертых, git может искажать переводы строк.
Теперь в окнах и только в окнах git по умолчанию автоматически изменяет строки.
(99% сообщества git, похоже, ненавидят это значение по умолчанию, но это, по-видимому, единственный разумный вариант по умолчанию в Windows).
В результате, если у вас есть "проблемы" с новой строкой, я предлагаю вручную исследовать каждый слой и точно указать, как вы хотите, чтобы новые строки обрабатывались. Я предлагаю сделать их явными, а не автоматическими.
Я предлагаю вам сначала изучить конфигурацию git, так как настройки Windows по умолчанию сильно различаются, а настройки git отличаются в некоторых версиях и некоторых сборках. (то есть msysgit отличается от cygwin - у git cygwin есть другой слой искажения новой строки - сам cygwin).
Наслаждайтесь.