1034 Stimmen

Wie kann man die Verfolgung eines Zweiges ändern?

El central Repository musste auf einem neuen Server eingerichtet werden, also habe ich ein neues Remote-Repository auf meinem lokalen Repository erstellt und auf dieses gepusht.

Aber wenn ich es jetzt tue git pull heißt es, ich sei auf dem neuesten Stand. Das ist falsch - es sagt mir etwas über die antiguo entfernten Zweig, nicht den neuen, von dem ich mit Sicherheit weiß, dass er neue Commits enthält.

Wie ändere ich meinen lokalen Zweig so, dass er einem anderen entfernten Standort folgt?

Ich kann dies in der Git-Konfigurationsdatei sehen, aber ich möchte nicht alles durcheinander bringen.

[branch "master"]
    remote = oldserver
    merge = refs/heads/master

2 Stimmen

Ich habe Ihren Titel geändert - Sie versuchen tatsächlich, die Fernbedienung zu ändern, die Sie verfolgen, aber immer noch denselben Zweignamen darin zu verfolgen.

10 Stimmen

Es ist schwierig, dies als ein Duplikat von Wie bringt man einen bestehenden Git-Zweig dazu, einen entfernten Zweig zu verfolgen? . In dieser Frage wird nicht angegeben, dass der Zweig bereits einen entfernten Zweig verfolgt. Diese hier schon.

2voto

user8128167 Punkte 5968

Ich habe gefunden @critikaster Beitrag hilfreich, außer dass ich diese Befehle mit GIT 2.21 ausführen musste:

$ git remote set-url origin https://some_url/some_repo
$ git push --set-upstream origin master

2voto

mtwom Punkte 37

Nach der Git-Dokumentation ist das der beste Weg:

  1. sicher sein, dass der tatsächliche Ursprungspfad angegeben ist:

git remote -v

  1. Nehmen Sie dann die Änderung mit vor:

git remote set-url origin

wobei url-repository die gleiche URL ist, die wir mit der Option clone erhalten.

2 Stimmen

Die Frage bezieht sich auf das Ändern des Zeigers auf einen entfernten Verfolgungszweig, nicht auf die URL einer Fernbedienung. Außerdem gibt es bereits 2 Fernzugänge mit unterschiedlichen URLs, so dass dieser Vorschlag nur einen Fernzugang falsch konfiguriert. Wenn Sie die Dokumentation erwähnen, verweisen Sie bitte auf die betreffende Seite und zitieren Sie die relevanten Teile. Schließlich scheint es bereits viele gültige Antworten auf diese Frage zu geben (eine davon ist der Ihren sogar sehr ähnlich), wenn Sie also nichts Neues gefunden haben, würde ich vorschlagen, einfach die vorhandenen Antworten zu verbessern.

1voto

In der neuesten Git-Version wie 2.7.4 ,

git checkout branch_name #Zweigname, den Sie ändern möchten Verfolgungszweig

git branch --set-upstream-to=upstream/tracking_branch_name #upstream - Name der Gegenstelle

0voto

Keenan Stewart Punkte 574

Nachdem ich die oben genannten Punkte ausprobiert hatte, suchte ich, suchte, suchte, etc. stellte ich fest, dass sich keine meiner Änderungen auf dem Server befanden, die in meinem lokalen Zweig waren, und Visual Studio im Team Explorer zeigte nicht an, dass dieser Zweig einen Remote-Zweig verfolgte. Der entfernte Zweig war jedoch vorhanden, also hätte es funktionieren müssen. Schließlich löschte ich die Remote-Verzweigung auf Github und schob meine lokale Verzweigung, die meine Änderungen enthielt, die aus einem unbekannten Grund nicht verfolgt wurden, erneut.

Durch Löschen des entfernten Zweigs und "re"-Push meines lokalen Zweigs, der nicht verfolgt wurde, wurde der lokale Zweig auf Git-Hub neu erstellt. Ich habe dies an der Eingabeaufforderung (unter Windows) versucht und konnte meine lokale Verzweigung nicht dazu bringen, die entfernte Verzweigung zu verfolgen, bis ich dies tat. Jetzt ist alles wieder normal.

1 Stimmen

Hallo Keenan. Bitte verzichten Sie darauf, Ihr Material hier zu signieren - es wird davon ausgegangen, dass die Profilkarte diese Aufgabe ausreichend gut erfüllt. Danke!

-4voto

Yunus Punkte 1

Ich habe viele Lösungen ausprobiert, aber diese hier hat für mich bei der Migration von Bitbucket zu Azure Devops funktioniert:

  1. Repository erstellen
  2. Git-Klon Quelle URL
  3. git config --global --unset credential.helper
  4. git config credential.helper store
  5. git remote rm origin
  6. git remote add origin URL zum NEUEN Projektarchiv
  7. git push origin --all
    Im Fehlerfall verwenden
    git push -f origin --all
    Im Falle eines Fehlers beim Zugang oder der Identität
    Zur Verzweigung gehen-->Verzweigung auswählen->3 Punkte-->Verzweigungssicherheit --> Force Push erlauben
  8. git push --tags

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X