Я пишу утилиту для сравнения файлов Accurev с локальной файловой системой с использованием файлов stat. Внутри файла stat есть значение размера для каждого элемента. Я пытаюсь сравнить размер, указанный Accurev, с размером локального файла.

Однако accurev сообщает размер файла, используя соглашение Unix (окончание строки = LF), в то время как моя машина с Windows сообщает размер файла, используя окончание строки = CR + LF. Это приводит к тому, что разница почти равна количеству строк в файле.

Хотя я мог подсчитать количество строк в каждом файле (с точностью до 1), есть ли способ заставить Accurev правильно отображать размеры файлов? Accurev должен каким-то образом действовать, поскольку он может определить, когда файл был изменен, даже если время изменения совпадает с временем изменения на сервере.

1
Matt Slagle 23 Янв 2014 в 23:39

1 ответ

Лучший ответ

Вы находитесь в рабочем пространстве AccuRev на своем компьютере с Windows? Если это так, создайте рабочее пространство и настройте его для использования Unix EOL. Таким образом, вы сравниваете unix с unix, а не unix с windows. Кстати, accurev выполняет команду chksum, чтобы определить, был ли файл изменен.

2
jstanley 24 Янв 2014 в 01:11