Как обрабатывать изменения типа файлов в Perforce? - PullRequest
3 голосов
/ 05 ноября 2008

Когда вы добавляете файл в Perforce, он пытается определить, какой это тип файла (текстовый, двоичный, utf16 и т. Д.). Это хорошо справляется с этой задачей, но, по-видимому, никогда не проверяет тип файла снова после первоначальной отправки в систему контроля версий. Недавно коллега внес изменение в текстовый файл, который преобразовал его в Unicode (utf16). Perforce не распознала это и по-прежнему считала, что он набрал text , поэтому, когда другие получили файл, он был поврежден.

Мы исправили проблему, повторно отправив файл и явно изменив тип файла на utf16 , но предпочли бы, чтобы это произошло автоматически. Есть способы заставить его всегда использовать определенный тип кодировки, но я не знаю, нравится ли мне эта идея. Кто-нибудь имел дело и нашел решение этой проблемы?

1 Ответ

5 голосов
/ 05 ноября 2008

Служба технической поддержки Perforce сказала следующее:

Perforce не проверяет содержимое файл при отправке правки.

Проверка каждого отдельного файла для редактирования контент потенциально очень дорогой. «text» и «utf16» не единственные типы файлов для поиска, файл потенциально может изменить тип с "текст" в "двоичный", например.

Другая проблема заключается в том, что иногда пользователь хочет переопределить значение по умолчанию поведение того, как Perforce распознает файл. Как сервер должен реагировать в этот случай, если фактический тип файла делает не соответствует тип файла пользователя обеспечивает

По этим причинам Perforce будет только определить тип файла, когда файл и возьмите "карту типов" и параметр команды "-t" в счет.

С другой стороны, вы можете предотвратить ваша ситуация не случится снова используя триггер «изменение содержимого». Этот триггер будет проверять содержимое файла и сравните его с указанный тип файла, отклоняя любой отправить, что создает несоответствие.

...