Відповіді:
Клоніруйте сховище як звичайно:
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
Потім перевірте потрібний вам тег:
git checkout tags/1.1.4
Це дозволить перевірити тег у стані "відокремленої голови". У такому стані "ви можете озирнутися, внести експериментальні зміни та здійснити їх та [відкинути ці зобов'язання], не впливаючи на будь-які гілки, виконавши іншу перевірку".
Щоб зберегти будь-які внесені зміни, перемістіть їх у нову гілку:
git checkout -b 1.1.4-jspooner
Ви можете повернутися до головної гілки за допомогою:
git checkout master
Зауважте, як було сказано в першій редакції цієї відповіді, є ще один спосіб перевірити тег:
git checkout 1.1.4
Але як було сказано в коментарі, якщо у вас є гілка з таким самим іменем, це призведе до того, що git попередить вас про те, що перейменування неоднозначне, і перевірити гілку за замовчуванням:
warning: refname 'test' is ambiguous.
Switched to branch '1.1.4'
Скорочення можна безпечно використовувати, якщо сховище не поділяє імена між гілками та тегами.
git tag
.
Станом на Git v2.23.0 (серпень 2019 року), він git switch
надається перевагу, git checkout
коли ви просто перемикаєте гілки / теги. Я здогадуюсь, що вони зробили це, оскільки git checkout
мали дві функції: для перемикання гілок та відновлення файлів. Так у v2.23.0 вони додали дві нові команди git switch
, і git restore
, щоб розділити ці проблеми. Я б передбачив у якийсь момент у майбутньому, git checkout
буде застарілим.
Щоб переключитися на звичайну гілку, використовуйте git switch <branch-name>
. Щоб переключитися на об'єкт, подібний до комітів, включаючи одиничні коміти та теги, використовуйте git switch --detach <commitish>
, де <commitish>
ім'я тегу чи номер комісії.
Цей --detach
параметр змушує вас визнати, що ви перебуваєте в режимі "перевірки та скасування експериментів" . Щоб створити нову гілку з комісії, на яку ви переходите, використовуйте git switch -c <new-branch> <start-point>
.
1.1.4
. Git перевірятиме філію, а не тег. Щоб явноgit checkout tags/1.1.4