Comment extraire la version version / tag 1.1.4 du bundle 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'
Comment extraire la version version / tag 1.1.4 du bundle 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'
Réponses:
Clonez le référentiel comme d'habitude:
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
Ensuite, vérifiez la balise que vous voulez comme ceci:
git checkout tags/1.1.4
Cela va extraire la balise dans un état «HEAD détaché». Dans cet état, "vous pouvez regarder autour de vous, apporter des modifications expérimentales et les valider, et [supprimer ces validations] sans affecter les branches en effectuant une autre extraction".
Pour conserver les modifications apportées, déplacez-les vers une nouvelle branche:
git checkout -b 1.1.4-jspooner
Vous pouvez revenir à la branche principale en utilisant:
git checkout master
Notez, comme cela a été mentionné dans la première révision de cette réponse, il existe une autre façon de récupérer une balise:
git checkout 1.1.4
Mais comme cela a été mentionné dans un commentaire, si vous avez une branche du même nom, cela entraînera git vous avertissant que le refname est ambigu et la vérification de la branche par défaut:
warning: refname 'test' is ambiguous.
Switched to branch '1.1.4'
Le raccourci peut être utilisé en toute sécurité si le référentiel ne partage pas les noms entre les branches et les balises.
git tag
.
À partir de Git v2.23.0 (août 2019), il git switch
est préférable de git checkout
changer simplement de branche / balise. J'imagine qu'ils l'ont fait car ils git checkout
avaient deux fonctions: pour changer de branche et pour restaurer des fichiers. Ainsi, dans la version 2.23.0, ils ont ajouté deux nouvelles commandes git switch
, et git restore
, pour séparer ces problèmes. Je prédirais à un moment donné dans le futur, git checkout
sera obsolète.
Pour passer à une branche normale, utilisez git switch <branch-name>
. Pour basculer vers un objet de type commit, y compris des commits simples et des balises, utilisez git switch --detach <commitish>
, où <commitish>
est le nom de la balise ou le numéro de validation.
L' --detach
option vous oblige à reconnaître que vous êtes dans un mode «d'inspection et d'expériences jetables» . Pour créer une nouvelle branche à partir du commit vers lequel vous basculez, utilisez git switch -c <new-branch> <start-point>
.
1.1.4
. Git récupérera la branche, pas la balise. Pourgit checkout tags/1.1.4