$ id: имя файла, дата / время создания Exp $ - PullRequest
9 голосов
/ 06 декабря 2008

Часто я сталкиваюсь со следующими утверждениями в исходном коде C / C ++:

$Id: lzio.c,v 1.24 2003/03/20 16:00:56 roberto Exp $

$Id: file name, version, timestamp, creator Exp $

Есть ли у вас какие-либо идеи, какое программное обеспечение производит эти "подписи"?

Ответы [ 5 ]

7 голосов
/ 06 декабря 2008

Подстановка ключевых слов в subversion создает такую ​​информацию, в частности Id:

Id

Это ключевое слово представляет собой сжатую комбинацию других ключевых слов. это подстановка выглядит примерно как $ Id: calc.c 148 2006-07-28 21: 30: 43Z Салли $, и интерпретируется как означающее, что Последнее изменение файла calc.c в Редакция 148 вечером июля 28, 2006 пользователем sally.

Вы можете указать Subversion вставить эти значения, используя svn: Keywords

Чтобы сообщить Subversion, стоит ли заменить ключевые слова на конкретный файл, мы снова обратимся к связанные с имуществом подкоманды. Свойство SVN: ключевые слова, когда установлено на версионный файл, управляющий который ключевые слова будут заменены на это файл. Значение разделено пробелом список имен ключевых слов или псевдонимов найдено в предыдущей таблице

Вы также можете сделать эти замены автоматически, отредактировав свою конфигурацию:

Subversion также предоставляет функция авто-реквизита, которая позволяет вам создать сопоставления имени файла шаблоны для имен и значений свойств. Эти отображения сделаны в вашем область конфигурации во время выполнения. Они опять влияет на добавление и импорт, и не только может переопределить любой тип MIME по умолчанию решение, принятое Subversion во время эти операции, они также могут установить дополнительный Subversion или кастом свойства тоже. Например, вы может создать отображение, которое говорит, что каждый раз, когда вы добавляете файлы JPEG - те, которые соответствовать шаблону * .jpg - Subversion должен автоматически установить Свойство svn: mime-type для этих файлов для изображения / JPEG. Или, возможно, любые файлы это соответствие * .cpp должно иметь svn: eol-style установлен на native, и svn: для ключевых слов установлено значение Id. Авто-проп поддержка, пожалуй, самая удобная инструмент, связанный с собственностью в Набор инструментов Subversion. Смотрите раздел называется «Конфиг» для получения дополнительной информации о настройка этой поддержки.

6 голосов
/ 06 декабря 2008

Системы контроля версий, такие как CVS, могут создавать такие теги.

3 голосов
/ 06 декабря 2008

И RCS, и CVS создают строки, которые выглядят именно так.

2 голосов
/ 06 декабря 2008

Я видел несколько установок vim, которые автоматически заполняют эти значения. SVN может захватить эти значения в хуках до и после фиксации, чтобы заполнить информацию по умолчанию в журналах фиксации.

0 голосов
/ 06 декабря 2008

Perforce поддерживает некоторые (но не все) эти ключевые слова.

...