2016-08-23 5 views
-1

Ich bin neu bei Git, SourceTree und Versionskontrolle im Allgemeinen, also bitte vergib meine Unwissenheit.Git-Fehler beim Drücken auf GitHub

Ich hatte ein Projekt auf Github mit ein paar Dutzend Commits zum Master-Zweig, ich machte nie andere Zweige, so dass es nur Commits an den Master und nichts anderes.

Mit SourceTree habe ich das Projekt heruntergezogen und dann eine ältere Version des Projekts ausgecheckt, in der Absicht, nur an dieser Version zu arbeiten und alle neueren Commits zu verwerfen.

An diesem Punkt sehen die Projektzweige wie diese enter image description here So arbeite ich an meiner älteren Version des Projekts für ein wenig und dann meine Arbeit gehen zu begehen. Das Commit läuft reibungslos, aber wenn ich gehe, um mein Projekt auf den GitHub-Server zu schieben, zeigt es diese Fehlermeldung enter image description here Es sagt HEAD von einem Hash getrennt. Was bedeutet das und wie repariere ich es? Dies ist das Dialogfeld, aus dem ich schob. enter image description here

Vielen Dank für Ihre Zeit mit diesem Blick.

Edit: Ich möchte zum Meister Zweig drücken, während die doppelte Frage wollte etwas anderes mit seinem losgelösten Kopf zu tun.

+0

Mögliche Duplikat [Herstellung eines git push von einem frei stehenden Kopf] (http://stackoverflow.com/questions/35736116/making-a-git finden (push-from-a-detached-head) –

Antwort

1

Sie haben commit mit detached HEAD gemacht, was bedeutet, dass Sie keinen Zweig haben, der sich auf HEAD bezieht, also dürfen Sie ihn nicht in GitHub schieben. Ihr Commit sollte in master sein.

Also, was Sie tun sollten:

0) Offene bash und gehen in das Projektverzeichnis.

1) Speichern Sie Ihre nicht festgelegten Änderungen, um sie sicher zu halten.

git stash 

2) Setzen Sie Ihre Commits auf master.

git rebase master 

3) Lösen Sie Konflikte, wenn Sie es haben.

4) Drücken Sie die Änderungen.

git push 

5) Erhalten Sie Ihre gespeicherten nicht festgeschriebenen Änderungen.

git stash pop 

Alle Informationen zu git können Sie in Pro Git

+0

Ich bin wirklich verwirrt darüber, wie ich die Konflikte lösen kann, die ich bekomme. Die Markierung, die es in meiner konfliktbehafteten Datei hinterlassen hat, macht momentan keinen großen Sinn. – j76goatboy

+0

Es könnte Ihnen helfen, https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging#Basic-Merge-Conflicts – Volen

+0

Danke für den resourse.Just, um sicherzustellen, I Ich möchte nicht, dass das Endergebnis mein aktuelles Projekt mit dem aktuellen Masterzweig zusammengeführt wird. Der aktuelle Hauptzweig ist durcheinander und ich möchte, dass mein aktuelles Projekt diese Version vollständig überschreibt. – j76goatboy

Verwandte Themen