Wie kann ich die Version 1.1.4 des rspec-Bündel ?
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'
Wie kann ich die Version 1.1.4 des rspec-Bündel ?
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'
Klonen Sie das Repository wie gewohnt:
git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundle
Dann checken Sie den gewünschten Tag wie folgt aus:
git checkout tags/1.1.4
Dadurch wird das Tag in einem "abgetrennten HEAD"-Zustand ausgecheckt. In diesem Zustand "können Sie sich umsehen, experimentelle Änderungen vornehmen und diese committen, und [diese Commits verwerfen], ohne irgendwelche Zweige durch einen weiteren Checkout zu beeinflussen".
Um alle Änderungen beizubehalten, verschieben Sie sie in einen neuen Zweig:
git checkout -b 1.1.4-jspooner
Sie können zum Master-Zweig zurückkehren, indem Sie:
git checkout master
Wie bereits in der ersten Überarbeitung dieser Antwort erwähnt, gibt es eine weitere Möglichkeit, ein Tag auszuchecken:
git checkout 1.1.4
Wie jedoch in einem Kommentar erwähnt wurde, führt dies, wenn Sie einen Zweig mit demselben Namen haben, dazu, dass Git Sie warnt, dass der Referenzname zweideutig ist und den Zweig standardmäßig auscheckt:
warning: refname 'test' is ambiguous.
Switched to branch '1.1.4'
Die Kurzschrift kann sicher verwendet werden, wenn das Repository keine gemeinsamen Namen für Zweige und Tags verwendet.
Für vorbeifahrende Betrachter ist diese Antwort zweideutig. Wenn es einen Zweig und ein Tag namens 1.1.4
. Git checkt den Zweig aus, nicht das Tag. Um das Tag explizit auszuchecken, tun Sie dies: git checkout tags/1.1.4
Ab dem Git v2.23.0 (August 2019), git switch
ist vorzuziehen gegenüber git checkout
wenn Sie einfach die Zweige/Tags wechseln. Ich vermute, dass sie dies getan haben, weil git checkout
hatte zwei Funktionen: zum Wechseln von Zweigen und zum Wiederherstellen von Dateien. In Version 2.23.0 wurden daher zwei neue Befehle hinzugefügt, git switch
und git restore
um diese Anliegen zu trennen. Ich würde sagen, irgendwann in der Zukunft, git checkout
wird veraltet sein.
Um zu einem normalen Zweig zu wechseln, verwenden Sie git switch <branch-name>
. So wechseln Sie zu einem Commit-ähnlichen Objekt, einschließlich einzelner Commits und Tags verwenden git switch --detach <commitish>
, donde <commitish>
ist der Tag-Name oder die Commit-Nummer.
Le site --detach
Option zwingt Sie zu erkennen, dass Sie sich in einem Modus der "Inspektion und verworfene Experimente" . Um einen neuen Zweig von dem Commitish, zu dem Sie wechseln, zu erstellen, verwenden Sie git switch -c <new-branch> <start-point>
.
chharvey 's réponse schlägt vor
Um zu einem Commit-ähnlichen Objekt, einschließlich einzelner Commits und Tags, zu wechseln, verwenden Sie
git switch --detach <commitish>
, donde<commitish>
ist der Tag-Name oder die Commit-Nummer.
Eigentlich ist Git 2.36 (Q2 2022) klarer: die Fehlermeldung, die durch " git switch HEAD~4
" ( man ) " wurde präzisiert, um die " --detach
"Option, die erforderlich ist.
Ver Übergabe 808213b (25. Februar 2022) von Alex Henrie ( alexhenrie
) .
(Zusammengefasst von Junio C. Hamano -- gitster
-- in 061fd57 übertragen , 06. März 2022)
switch
: Erwähnung der--detach
Option beim Sterben aufgrund einer fehlenden VerzweigungAbgezeichnet von: Alex Henrie
Benutzer, die es gewohnt sind, die
git checkout <tag>
( man ) davon ausgehen, dassgit switch <tag>
( man ) wird das Gleiche tun.
Informieren Sie sie über die--detach
Option, damit sie sich nicht fragen müssen, warumgit switch
funktioniert nicht, abergit checkout
tut.
git config
umfasst nun in seinem Manpage :
suggestDetachingHead
Hinweis angezeigt, wenn
git switch
weigert sich, HEAD zu lösen ohne die ausdrückliche--detach
Option.
Die Fehlermeldung wird angezeigt:
a branch is expected, got tag 'xxx' If you want to detach HEAD at the commit, try again with the --detach option
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.