2012-04-11 5 views
1

Wir sind gerade von SVN zu Git gegangen. Beim Versuch, einige unbenutzte Dateien zu bereinigen. Ich habe gespeichert, bevor ich einen Ordner löschte, von dem ich dachte, dass wir ihn nicht benutzen würden. Ich habe das nicht zum Ursprung gebracht. Mir wurde klar, dass wir schließlich eine der Dateien im Ordner verwenden und zu meinem letzten Commit zurückkehren möchten. Dies ist auf meinem eigenen Zweig vom Meister. Ich kann keine Möglichkeit finden, das in Xcode zu tun. Fehle ich etwas? Vielen Dank.Zurück zum letzten Festschreiben in Xcode 4 mit Git

Antwort

10

Sie können hier für rsanchezsaez Antwort sehen: Xcode 4 git integration

Xcode 4 lassen Sie nicht älter zur Kasse verpflichtet innerhalb der Benutzeroberfläche, es sei denn, Sie einen neuen Zweig für das Commit erstellt. Trotzdem können Sie es über die Befehlszeile ausführen. Dazu verwenden Sie den folgenden Befehl von Ihrem Projektordner

$ git log --format = oneline

den Hash-Code des begehen, um Sie zu, gehen wollen und dann verwenden:

$ git checkout wanted-hash-code

zum Auschecken dieser bestimmten Version. Dort können Sie Tests durchführen, Änderungen vornehmen und möglicherweise eine neue Verzweigung erstellen. Wenn Sie ein Commit durchführen, ohne einen neuen Zweig zu erstellen, werden Sie die neueren Commits in Ihrem aktuellen Zweig verlieren. Wenn Sie möchten, auf die neueste verpflichten gehen zurück nach ein paar Tests auf Ihrer älteren Version Verwendung durchgeführt hat:

$ git checkout master

Notiz wieder, dass dies nicht funktionieren, wenn Sie ein neues tun begehen aus Ihre alte Code-Version, ohne einen neuen Zweig zu erstellen, da neuere Commits im aktuellen Zweig dereferenziert werden.

Denken Sie auch daran, vor der Anfrage nach SO zu suchen. Viele Fragen wurden bereits gestellt und beantwortet.

1

Führen Sie in der Befehlszeile ein Programm mit der Bezeichnung gitk aus. Dadurch können Sie die aktuellen Commits anzeigen. Finden Sie die ID des Commit Sie wollen (zB die vorherigen Festschreibung) und gehen Sie wie folgt auf Ihre Branche:

git tag JustInCase 
git reset --hard <commit ID> 

Refresh gitk, und wenn Sie mit den Ergebnissen zufrieden sind, dann löschen Sie den Tag mit:

git tag -d JustInCase 

Wenn Sie nicht mit ihm zufrieden sind, tun gerade:

git reset --hard JustInCase 
git tag -d JustInCase 

dies für Sie sichtbar zu machen:

Starten

1)

enter image description here

2) Nach dem Markieren und Zurücksetzen Ihres Zweiges zum vorherigen begehen.

enter image description here

3) Nach dem Tag zu löschen und Reload in gitk tun.

enter image description here

Verwandte Themen