Відповіді:
Клоніруйте сховище як звичайно:
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