Git-Ursprungsangriff überschreibt Master?

9

Ich habe ein Repository auf Github, aav1

Auf meinem Laptop habe ich zwei Zweige, einen Master und einen vs12up Der Masterzweig war, als die Software Visual Studio 2008 war, vs12up zu Visual Studio 2012 konvertiert.

Auf meinem Laptop scheint alles in Ordnung zu sein und ich schob den neuen Zweig nach Github, scheint richtig.

Auf meinem Desktop habe ich versucht, den entfernten Zweig zu ziehen:

%Vor%

Er schrieb die Änderungen in meinen Master-Zweig auf dem Desktop, git log zeigt die Commits, die im vs12up Zweig gemacht wurden, aber git branch zeigt nur master , das ist der aktuelle Zweig.

Wie kann ich die Änderungen in den Zweig master zurückversetzen und den Zweig vs12up auf meinem Desktop aufrufen, damit er dem Repository auf meinem Laptop entspricht?

    
Jeff 10.05.2013, 01:28
quelle

1 Antwort

28

Wenn Sie git pull mit einem entfernten Zweignamen eingeben, wird der entfernte Zweig abgerufen und anschließend in Ihren aktuellen lokalen Zweig eingefügt. Um dies rückgängig zu machen, müssen Sie zuerst Ihren lokalen Zweig auf das entfernte master zurücksetzen und dann einen neuen lokalen Zweig vs12up aus dem entsprechenden entfernten Zweig erstellen.

  1. Setzen Sie Ihr lokales master zurück, damit es mit dem master des Remote-Repositorys übereinstimmt (ACHTUNG: Achten Sie darauf, dass Sie keine nicht festgeschriebenen Änderungen behalten, bevor Sie den folgenden Befehl ausgeben):

    %Vor%
  2. Holen Sie alle Remote-Zweige in Ihr lokales Repository:

    %Vor%
  3. Erstellen Sie einen neuen lokalen Zweig vsup12 aus dem entfernten Zweig vsup12 und wechseln Sie zu diesem neuen lokalen Zweig:

    %Vor%

Beachten Sie, dass Sie die letzten Änderungen aus dem Zweig git pull auf Github in Ihr lokales vsup12

holen und zusammenführen, wenn Sie anschließend einen vsup12 ausführen, während Sie zum Zweig vsup12 wechseln     
earl 10.05.2013, 01:43
quelle