Что происходит с метаданными в источнике? Есть ли инструменты для этого?

Я сравниваю две разные версии ядра (один официальный, один от производителя); есть тысячи файлов, единственная разница которых в метаданных в файлах. Метаданные выглядят как «$: Key: value $». Есть ли набор инструментов, которые изменяют этот материал? Что генерирует эти данные? Есть ли способ сделать diff, не загрязняя это, не запуская весь источник через sed?

Пример:

--- ./drivers/atm/idt77252.h 2010-10-05 14:53:01.787778390 -0400 +++ ../linux-2.6.21.x/drivers/atm/idt77252.h 2010-03-26 03:08:26.000000000 -0400 @@ -1,8 +1,8 @@ /******************************************************************* - * ident "$Id: idt77252.h,v 1.2 2001/11/11 08:13:54 ecd Exp $" + * ident "$Id: idt77252.h,v 1.1.1.1 2007-05-25 06:50:05 bruce Exp $" * - * $Author: ecd $ - * $Date: 2001/11/11 08:13:54 $ + * $Author: bruce $ + * $Date: 2007-05-25 06:50:05 $ * * Copyright (c) 2000 ATecoM GmbH * 

  • Принудительный вывод экрана на внешний монитор при установке / загрузке linux
  • Как разрешить проблему <not counted> в перфомансе?
  • Как включить Wi-Fi с помощью клавиатуры (Dell Inspiron 14r) в suse Linux 11.4
  • Можно ли накладывать цветные тексты поверх консоли linux, как на этом изображении?
  • Как запретить пользователю изменять файлы с помощью разрешения linux
  • Проблемы с корневой файловой системой только для чтения
  • Как проверить раздел подкачки
  • Вызовите сценарий Linux с языка сценариев
  • 3 Solutions collect form web for “Что происходит с метаданными в источнике? Есть ли инструменты для этого?”

    Как говорит Тэнте, эти $Word: ...$ вставляются и обновляются некоторыми системами управления версиями (CVS и SubVersion, типично).

    У GNU diff есть опция --ignore-lines-matching-re которая может исключать строки, которые соответствуют определенному регулярному выражению. Это должно сделать трюк:

     diff -wu --ignore-matching-lines='\$[AZ][az]*:.*\$' -r sourceA/ sourceB/ 

    (Обратите внимание на параметр \ before $ чтобы он не интерпретировался как маркер конца строки в регулярном выражении.)

    CVS (система управления версиями) может заменить определенные «заполнители» своими значениями при выписке (так что у вас есть, например, версия проверки или автора в файле).

    Кажется, я помню, что биткистер также сделал это «расширить ключевые слова на кассе», по указанным датам, это может объяснить различия (но только если это для действительно древних источников ядра). После фикшированного биткира источники, когда вы проверяли git, которые не верят в расширение ключевых слов, поэтому они будут заморожены в этот момент времени.

    Можем ли мы узнать, какие источники ядра вы сравниваете? Просто любопытно.

    Interesting Posts

    Как выполнить команду несколько раз с разными аргументами?

    Активация аудиосистемы в Arch Linux

    Samba – Не удается записать в share с "unix extensions = no", установленным в smb.conf

    Низкий графический режим, системная зависания, без загрузки, без загрузки компакт-диска

    Как преобразовать изображение в 24-битный BMP в командной строке?

    интерфейс linux для подключения IP-адресов

    Какой самый быстрый (процессорный) способ получить мою текущую ветку git?

    Создание псевдонима для сценария bash

    Как открыть файл изменений с помощью wirehark?

    Доступ к Google-трансляции через wget

    ZFS отключает запись синхронизации в наборе данных

    Частота процессора возвращается после масштабирования с помощью индикатора-cpufreq, приостановки и пробуждения

    Zsh перенаправляет на / dev / null и pipe

    cronjob при возобновлении с приостановления

    как войти в качестве участника определенной группы

    Linux и Unix - лучшая ОС в мире.