Git: получить номер следующей ревизии

IDE, VCS и прочее

Модератор: Модераторы разделов

IMB
Сообщения: 2567
ОС: Debian

Git: получить номер следующей ревизии

Сообщение IMB »

Доброго дня!
В Subversion есть такое понятие как kewords, в частности сейчас интересует Revision. Механизм прост - при коммите ключевое слово в файле дополняется определёной информацией, для Revision это номер ревизии.
Более подробно тут http://svnbook.red-bean.com/en/1.4/svn.adv...l.keywords.html.
Вопрос - возможно ли организовать нечто подобное в Git?
Я предполагаю использовать prepare-commit-msg hook, но как узнать номер следущей ревизии?
Спасибо.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Git: получить номер следующей ревизии

Сообщение watashiwa_daredeska »

А что такое «следующая ревизия»? Такого понятия как «номер ревизии» в git не существует в принципе.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: Git: получить номер следующей ревизии

Сообщение IMB »

Согласен, не очень корректно выразился.
Как получить номер следующего коммита?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5405
ОС: Gentoo

Re: Git: получить номер следующей ревизии

Сообщение /dev/random »

IMB писал(а):
18.03.2010 19:37
Согласен, не очень корректно выразился.
Как получить номер следующего коммита?

Следующего в каком плане? По дате? Это может оказаться коммит совсем из другой ветки. По наследованию? Текущий коммит может оказаться началом "вилки", и у него может быть несколько наследников. И т.д.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Git: получить номер следующей ревизии

Сообщение watashiwa_daredeska »

IMB писал(а):
18.03.2010 19:37
Как получить номер следующего коммита?
Никак. Нет в git номеров у коммитов. Можете своим скриптом нумеровать сами как Вам хочется.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: Git: получить номер следующей ревизии

Сообщение IMB »

/dev/random писал(а):
18.03.2010 19:45
Следующего в каком плане? По дате? Это может оказаться коммит совсем из другой ветки. По наследованию? Текущий коммит может оказаться началом "вилки", и у него может быть несколько наследников. И т.д.

В прямом. Наглядный пример того что хочется:

git log

commit 3a2dcddd7d54379859663d8bb2fed412f987e690 Author: Author <author@mail.ru> Date: Tue Mar 16 20:49:01 2010 +0300 commit message commit 99948aa54a9d59cae4ec8f599d59e71c78c4af0e Author: Author <author@mail.ru> Date: Fri Dec 11 20:46:12 2009 +0300

Имея изменённый commit 99948aa5 хочется что бы при коммите в файле в тег Rev прописалось бы значение 3a2dcddd7d54379859663d8bb2fed412f987e690.
Да, я понимаю, что в Subversion с этим несколько проще и там, возможно, это реализуется простейшим инкрементом текущей ревизии.
Несомненно я могу это реализовать после коммита, но в этом случае файл снова меняется.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5405
ОС: Gentoo

Re: Git: получить номер следующей ревизии

Сообщение /dev/random »

IMB писал(а):
18.03.2010 21:13
Имея изменённый commit 99948aa5 хочется что бы при коммите в файле в тег Rev прописалось бы значение 3a2dcddd7d54379859663d8bb2fed412f987e690.
Да, я понимаю, что в Subversion с этим несколько проще и там, возможно, это реализуется простейшим инкрементом текущей ревизии.
Несомненно я могу это реализовать после коммита, но в этом случае файл снова меняется.

Т.е. вы хотите записать в файл хеш коммита, который ещё не сделали? Это невозможно. Это не номер, это хеш. Изменение содержимого меняет хеш. Вычислить хеш можно только имея уже готовое содержимое, которое больше не будет меняться.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Git: получить номер следующей ревизии

Сообщение watashiwa_daredeska »

Спасибо сказали: