Как я могу сказать что-то вроде HEAD-1 в svn?


Я хочу сослаться на ревизию непосредственно перед head или n-ревизий перед HEAD или что-то в этом роде.

3 10

3 ответа:

Короче говоря, вы не можете без выполнения команды. С помощью check-in hooks вы можете получить доступ к "версии до этой", в противном случае вам нужно запросить ее динамически. Вот пример, который заполняет переменную оболочки с ревизией текущей головки минус один.

HEAD_MINUS_ONE=$(svn info http://svn/path/to/head | grep ^Revision | awk '{print $2-1}')

В Subversion есть несколько встроенных ключевых слов, которые могут решить большинство ваших проблем:

  • BASE: это ревизия, используемая в текущем рабочем каталоге.
  • HEAD: это текущая вершина ветви.
  • COMMITTED: это последняя зафиксированная ревизия файла перед BASE.
  • PREV: это последняя измененная редакция из BASE. Это в значительной степени совершено-1.

Для всего остального вам нужно будет сделать расчет как синтезатор показал вам.

Mercurial + hgsubversion + HG help revsets