SVN ключевые слова не является хорошим решением. Как отмечали другие, добавление $ Revision $ в файл влияет только на конкретный файл , который может не изменяться в течение длительного времени.
Не забывайте «редактировать» файл (добавляя или удаляя пустую строку) перед каждой фиксацией бессмысленно. Вы также можете просто ввести ревизию от руки.
Один хороший способ сделать это (о котором я знаю) - это автоматизировать процесс развертывания (что всегда хорошо) и использовать команду svnversion. Вот что я делаю:
Везде, где мне нужна ревизия, я делаю: <?php include 'version.php'; ?>
. Этот файл "version.php" имеет только номер редакции. Более того, он не является частью репозитория (он должен игнорироваться). Вот как я его создаю:
1) В проектах, где SVN установлен на сервере, я также использую его для развертывания. Получая последнюю версию на сервер, у меня есть скрипт, который, помимо прочего, выполняет следующее (работает на сервере):
cd /var/www/project
svn update
rm version.php
svnversion > version.php
2) В проектах, где SVN не установлен, мой сценарий развертывания более сложен: он создает файл version.php локально, архивирует код, загружает и извлекает его