Возможно ли (как-то) иметь в Git (локальных) относительных ревизионных (фиксированных) номерах, например, в Mercurial 0, 1, 2, 3,... вместо коротких хэшей?
Или что-нибудь более удобное для пользователя?
Возможно ли (как-то) иметь в Git (локальных) относительных ревизионных (фиксированных) номерах, например, в Mercurial 0, 1, 2, 3,... вместо коротких хэшей?
Или что-нибудь более удобное для пользователя?
Просто используйте:
master~10, чтобы получить 10-ю последнюю фиксацию на ветке master.master^, чтобы получить вторую последнюю фиксацию на ветке master.master^^, чтобы получить третью последнюю фиксацию на ветке master.Их можно даже комбинировать: master^^~5^.
master может быть любым именем ветки (локальным или удаленным) или HEAD для ссылки на текущую фиксацию.
Вы можете использовать master^2 для получения второго родителя слияния.
Вы всегда можете ссылаться на фиксацию с использованием префикса своего SHA-1-хеша, если он уникален. Например, если вы хотите проверить 980e3ccdaac54a0d4de358f3fe5d718027d96aae, вы можете использовать git checkout 980e, если никакие другие коммиты не начинаются с 980e.
Я только что сделал что-то такое: dash-r. Это все еще грубо, но вы можете найти его полезным.
В принципе, это прокладка, которая может создать модифицированную версию основного журнала git с такими строками фиксации:
commit 4 id: a4d0892d38f4d72902e35a5b1ca11e602fffcef6
а затем ссылайтесь на эти числа, окружая вызов -r обратными окнами:
git diff `-r 2`
(Предположим, вы установили его в свой путь с именем "-r". Я делаю это, поскольку он выглядит как обычный параметр, если я игнорирую обратные ссылки.)
Он может обрабатывать диапазоны и отрицательные числа:
git diff `-r 2..-2`
Git отсутствие номеров ревизий было для меня главным препятствием при нагревании до Git. Видение SHA-хэшей в git log нарушает мой поток. Поэтому я надеюсь, что это поможет нам обоим.
Короткий ответ: Нет Да.
Однако вы можете использовать git -tag. Например, чтобы пометить ваш последний коммит как версию 1.2, выполните следующие действия:
git tag -a v1.2 HEAD
На этой странице объясняется, как использовать его для управления версиями: http://grinninggecko.com/commit-version-numbers-with-git/