2016-07-21 20 views
0

Ich habe mit einem Git-Konto über Eclipse synchronisiert. Wenn ich vom Kopf ziehe/hole, sagt es, dass das Projekt vollständig aktualisiert ist.Anfang GIT - nicht alle Dateien vom Kopf abholen? Wie kann ich sicher Fehler beheben?

Wenn ich jedoch einige Dateien mit der Version in head vergleichen, heißt es, dass sie in der letzten Revision nicht mehr existieren. Sie tun es aber.

Auch sollte ich nur eine Änderung in meinem Arbeitsbereich haben, die Hinzufügung einer Datei, aber es gibt Hunderte von fehlenden Dateien nach meinem Eclipse Kopf - das ist jedoch nicht der Fall.

ich versucht habe -

Zug-/Abholen aus dem GIT Perspektive in Eclipse „git reset --hard“ von der Kommandozeile Lauf GIT (die neueste Meldung im Changelog enthalten war zurückgekehrt - aber immer noch die gleichen Problem).

Es gibt eine versteckte .git im Stammordner des Projekts, so wie es sein sollte. In der Eclipse-GUI wird das kleine Symbol für jedes Projekt angezeigt, das anzeigt, dass es mit GIT verbunden ist.

Was ist mein wahrscheinliches Problem hier? Wie kann ich hier sicher Fehler beheben? Ich möchte vermeiden, kastriert zu werden, um notwendige Dateien wenn möglich zu entfernen.

Bearbeiten -

Es gibt '?' und Warnsymbole neben jeder Datei - aber ich habe gerade das Projekt aus dem letzten Repository geholt. Warum verschwinden diese nicht?

Vielen Dank!

Antwort

0

Verwenden von Befehlszeile:

  • git fetch - Änderungen von Remote-Repository
  • git checkout master (oder einem anderen Zweig Sie sehen in mögen) holen - um sicherzustellen, dass Sie nicht in abgenommenen Zustand
  • git reset --hard - alle lokalen Änderungen
  • git clean -xdf zu verwerfen - von Baum
alle untracked und ignoriert Dateien zu reinigen

Nun sollte git status zeigen "Ihre Branche ist up-to-date"

+1

„Auf Zweig Master, nichts Baum sauber zu begehen, arbeiten ist“ getan haben. Ich vermisse jedoch eine Reihe von Dateien - sehr merkwürdig. Danke –

0

Ich glaube, Sie in den Prozess der git Workflow verloren haben. Wenn Sie versuchen, mit einem Remote-Repository zu arbeiten, müssen Sie sicherstellen, dass Sie es korrekt eingerichtet haben, bevor Sie weitere Arbeiten ausführen.

Seien Sie vorsichtig, da git fetch und git pull für verschiedene Zwecke dienen.

git fetch werden Informationen von Ihrem Remote-Repository bekommen, ABER NICHT fusionieren es

git pull werden Informationen von Ihrem Remote-Repository erhalten UND fusionieren es

Auch vorsichtig sein, wenn Sie

git reset --hard 
verwenden

was es tut, passt Ihr Arbeitsverzeichnis auf den letzten Index (HEAD). Wenn Sie keine Übereinstimmung haben, wird das Arbeitsverzeichnis leer bleiben. Wenn Ihr erster Commit leer war und Sie Dateien in Ihrem Arbeitsverzeichnis haben, die Sie nicht gespeichert oder festgeschrieben haben, werden die Dateien aus Ihrem Arbeitsverzeichnis entfernt und Sie kehren zu Ihrem vorherigen Commit zurück.

Um zu erfahren, was in Ihrem aktuellen lokalen Repository passiert, können Sie einige Dinge tun, um den Inhalt besser zu verstehen. folgende Befehle verwenden, um mehr

Am Ausgang zu lernen, das wird zeigen, was zuletzt geänderten Dateien seit

git status 

Am Ausgang zu begehen, wird dies zeigen die * Zweig Sie auf

git branch 

Auf befinden Ausgabe, dies zeigt Ihnen Ihre Remote-Filialen

Am Ausgang wird dies eine Erzählung aller Commits produzieren Sie auf CURRENT Zweig

git log --oneline 
+0

Danke für das; Ich weiß im Allgemeinen, was jeder Befehl in diesem Fall tun sollte ... es scheint es aber nicht zu tun. Gibt es einen expliziten Weg, ich kann nur eine Verbindung mit dem letzten Commit (in diesem Fall ist Master) und greifen alle Dateien darin, überschreiben meine eigenen? Ich habe fast alles ausprobiert (einschließlich aller oben genannten Befehle, in unterschiedlichen Aufträgen!), Und hatte kein Glück :( –

+0

Sprechen Sie mich durch, was Sie tun, nachdem Sie git shell –

+0

Ich öffne git cmd, navigieren Sie zum Stamm meines Projekts. Ich starte "git reset --hard HEAD". Die Befehlszeile druckt die letzte Commit-Nachricht. Ich starte "git clean -f", keine Reaktion von cmd line, git pull sagt "Schon up-to-date". Mein Eclipse-Arbeitsbereich Es fehlen immer noch viele Dateien/Ordner trotz Aktualisierung –