2016-04-07 1 views
0

Ich versuche herauszufinden, in welchem ​​Zweig ich meine letzten 5 Stunden gearbeitet habe. Ich tippte versehentlich und alle meine Änderungen weg!Wie kann ich eine gespeicherte Datei zurückholen, die nicht in git gespeichert ist?

Durch Zufall Ich tippte:

git stash 

Dies ist, was ich enter image description here sah:

Dann überprüfte ich meine Zweig:

Dann versuchte ich mein Versteck zu holen . Ich Kasse meinem Zweig und tippte

git stash pop 

Und jetzt bekomme ich dies:

(use "git reset HEAD <file>..." to unstage) 

    new file: ******************/UIViewController+Keyboard.h 
    new file: ******************/UIViewController+Keyboard.m 

Changes not staged for commit: 
    (use "git add <file>..." to update what will be committed) 
    (use "git checkout -- <file>..." to discard changes in working directory) 

    modified: ******************.xcodeproj/project.pbxproj 
    modified: ******************/CTAuthenticateUserViewController.m 

Untracked files: 
    (use "git add <file>..." to include in what will be committed) 

    ******************/Base.lproj/Bernard copy.storyboard 
    ******************/Base.lproj/Bernard.storyboard 
    ******************/Keyboard.h 

Dies ist, was ich denke, richtig ist:

(use "git reset HEAD <file>..." to unstage) 

Das bedeutet, alle meine gebunkert Dateien löschen, indem Sie sie inszenieren!

use "git add <file>..." 

Dies wird aktuelle Dateien durch verdeckte Dateien ersetzen ?!

"git checkout -- <file>... 

Änderungen gebunkert zu Bin geht und letzten COMMIT werden Kopf

"git add <file>..." 

Dies wird diese Datei in den aktuellen Zweig hinzufügen, die von Stash

Antwort

1

Doing git stash pop gilt Ihre gebunkert Änderungen an der zur Zeit kommt Arbeitsbaum ausgecheckt. Wenn der Befehl keine Fehler wie "conflicts arised" oder ähnliches ergab, konnte git die Änderungen übernehmen und das Stash-Commit aus dem Stash-Stack löschen. Nachdem stash apply oder stash pop beendet ist, wird ein git status ausgeführt, so dass Sie den aktuellen Status Ihres Arbeitsbaums sehen. Stashing behält auch bei, was Sie zum Index hinzugefügt haben und was Sie gerade geändert haben, ohne den Index hinzuzufügen. Sie sollten jetzt alle Ihre Arbeit zurück haben und können weitermachen, wie Sie möchten.

+0

Ja, Sie haben Recht. Ich habe mich gefragt, was diese Hinweise auf Git-Status bedeuten. – Bernard

+0

Übrigens habe ich gerade festgestellt, dass alle verschwundenen Dateien zurück sind. – Bernard

+0

Nun, es hat nichts mit dem Stash zu tun, es ist nur eine normale 'git status'-Ausgabe, die angibt, welche Befehle Sie für bestimmte Dateien verwenden könnten, um typische Ziele zu erreichen. – Vampire

Verwandte Themen