Como faço para verificar a versão / tag da versão 1.1.4 do pacote rspec ?
cd ~/Library/Application\ Support/TextMate/Bundles/
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
osascript -e 'tell app "TextMate" to reload bundles'
Como faço para verificar a versão / tag da versão 1.1.4 do pacote rspec ?
cd ~/Library/Application\ Support/TextMate/Bundles/
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
osascript -e 'tell app "TextMate" to reload bundles'
Clone o repositório normalmente:
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
Em seguida, efetue o check-out da tag desejada:
git checkout tags/1.1.4
Isso fará o checkout da tag no estado 'desanexado HEAD'. Nesse estado, "você pode olhar em volta, fazer alterações experimentais e enviá-las, e [descartar essas confirmações] sem afetar nenhuma ramificação executando outro checkout".
Para manter as alterações feitas, mova-as para uma nova ramificação:
git checkout -b 1.1.4-jspooner
Você pode voltar ao ramo principal usando:
git checkout master
Observe que, como mencionado na primeira revisão desta resposta, há outra maneira de efetuar o check-out de uma tag:
git checkout 1.1.4
Mas, como foi mencionado em um comentário, se você tiver um ramo com o mesmo nome, isso resultará no git avisando que o refname é ambíguo e fazendo check-out do ramo por padrão:
warning: refname 'test' is ambiguous.
Switched to branch '1.1.4'
A abreviação pode ser usada com segurança se o repositório não compartilhar nomes entre ramificações e tags.
1.1.4
. O Git fará o checkout do ramo, não da tag. Para fazer o checkout explicitamente da tag do:git checkout tags/1.1.4
git tag
.A partir de Git v2.23.0 (agosto de 2019),
git switch
é preferívelgit checkout
quando você está simplesmente alternando ramos / tags. Acho que eles fizeram isso desde quegit checkout
tinham duas funções: para alternar ramificações e restaurar arquivos. Portanto, na v2.23.0, eles adicionaram dois novos comandosgit switch
, egit restore
para separar essas preocupações. Eu preveria em algum momento no futuro,git checkout
será preterido.Para alternar para uma ramificação normal, use
git switch <branch-name>
. Para alternar para um objeto de confirmação, incluindo confirmações e tags únicas, usegit switch --detach <commitish>
, onde<commitish>
é o nome da tag ou o número de confirmação.A
--detach
opção obriga a reconhecer que você está no modo de "experimentos de inspeção e descartáveis" . Para criar uma nova ramificação a partir da confirmação para a qual você está mudando, usegit switch -c <new-branch> <start-point>
.fonte