gitx Wie bekomme ich meine ‘Detached HEAD’-Commits zurück in den Master [duplicate]

Lesezeit: 3 Minuten

gitx Wie bekomme ich meine Detached HEAD Commits zuruck in den
Travis

Mit Git X und muss königlich an etwas herumgefummelt haben. Sieht so aus, als hätte ich vor ein paar Tagen einen Zweig namens erstellt detached HEAD und habe mich dafür eingesetzt. Mein normaler Prozess ist es, mich zu verpflichten master und dann schieben Sie das zu origin. Aber ich kann nicht pushen detached HEAD.

Meine nächste Station hat mich verarscht. ich wählte git checkout master – und meine detached HEAD Zweig verschwunden. Wenn ich zu meinem Projekt zurückkehre, wurden alle meine Änderungen in den letzten Tagen gelöscht.

Kann ich diese Änderungen irgendwie wiederherstellen?

  • Verwenden Sie git reflog, um die verlorenen Commits zu finden.

    – William Pursel

    30. Januar 2011 um 21:05 Uhr

  • Sehen gitready.com/intermediate/2009/02/09/…

    – rgardler

    23. Dezember 2011 um 13:56 Uhr

  • Wenn Ihr aktueller “Zweig” HEAD ist, dann CREATE tmp verzweigen und dann zu wechseln master und zusammenführen tmp dazu. stackoverflow.com/a/5772882/860099

    – Kamil Kielczewski

    11. Dezember 2018 um 6:11 Uhr

1646309885 326 gitx Wie bekomme ich meine Detached HEAD Commits zuruck in den
Josh Lee

Wenn checkout master war das letzte, was du getan hast, dann das neu loggen Eintrag HEAD@{1} enthält Ihre Commits (andernfalls verwenden Sie git reflog oder git log -p um sie zu finden). Verwenden git merge HEAD@{1} um sie schnell zum Master vorzuspulen.

BEARBEITEN:

Wie in den Kommentaren angemerkt, Git Ready hat einen großartigen Artikel darauf.

git reflog und git reflog --all gibt Ihnen die Commit-Hashes der falsch platzierten Commits.

Git Ready: Reflog, Ihr Sicherheitsnetz

Quelle: http://gitready.com/intermediate/2009/02/09/reflog-your-safety-net.html

  • Da ich kein Power-Git-Benutzer bin, war dies hilfreich, aber nicht detailliert genug. Es veranlasste mich jedoch, das Netz zu durchsuchen – danke. ich fand gitready.com/intermediate/2009/02/09/… sehr hilfreich

    – rgardler

    23. Dezember 2011 um 13:55 Uhr


  • Für jeden, der HEAD@{1} in Powershell (Windows) ausführt, erhalten Sie einen nicht beschreibenden Fehler wie error: unknown switch ‘e’. Dies liegt daran, dass geschweifte Klammern in Powershell eine besondere Bedeutung haben. Geben Sie stattdessen Folgendes ein: ‘HEAD@{1}’.

    – Johnny Oshika

    14. Januar 2014 um 0:20 Uhr

  • Wenn Sie Fischschalen verwenden, erhalten Sie diesen Fehler merge: HEAD@1 - not something we can mergefish entfernt die geschweiften Klammern, also wechseln Sie zuerst zu bash, dann wird es funktionieren.

    – Briankip

    16. Februar 2016 um 9:46 Uhr

  • Anstatt zusammenzuführen, können Sie auch die getrennten Commits auswählen, z git cherry-pick HEAD@{3}. Dadurch wird der Verlauf nicht mit vielen Zusammenführungen überladen, wenn mehrere Commits zu retten sind.

    – Dunkler Staub

    17. August 2016 um 15:12 Uhr

  • Git für Windows scheint Anführungszeichen für die zu benötigen HEAD@{1}sonst kommt es mit merkwürdigen Fehlern….error: unknown switch c” -> also verwenden git merge "HEAD@{1}"

    – Falk Alexander

    13. Februar 2019 um 19:22 Uhr


Wenn Ihr abgesetzter HEAD ein schneller Vorlauf des Masters ist und Sie nur die Commits stromaufwärts möchten, können Sie das tun

git push origin HEAD:master

direkt zu schieben, oder

git checkout master && git merge [ref of HEAD]

wird es wieder mit Ihrem lokalen Master zusammenführen.

  • Das hat bei mir funktioniert und der Ansatz von @Josh Lee nicht. Also ich bin froh, dass das funktioniert hat!

    – vy32

    14. Mai 2013 um 0:27 Uhr

  • Dadurch werden die Commits auf dem getrennten Kopf zurück zum Ursprung (Ursprung/Master) verschoben, Sie bleiben jedoch lokal in einem getrennten Zustand. Ist git checkout origin master der beste Weg, um wieder auf den Master-Zweig zu kommen? Es scheint besser zu sein, zuerst in den Master zu verschmelzen und dann zum Ursprung zurückzukehren.

    – StuWeldon

    20. August 2014 um 21:38 Uhr

  • funktioniert bei mir danke.

    – Nouman Ch

    3. Dezember 2018 um 5:31 Uhr

923290cookie-checkgitx Wie bekomme ich meine ‘Detached HEAD’-Commits zurück in den Master [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy