In VSCode wird dieser Zweig nach einer Pull-Anforderung und dem Löschen des Zweigs auf GitHub weiterhin in Visual Studio Code angezeigt. Wenn ich den Zweig auswähle, wird erwartungsgemäß ein Fehler ausgegeben.
Wie entferne ich diese jetzt gelöschten Zweige aus VSCode - kann ich das automatisch tun?
git fetch --prune
Aktualisieren / Löschen von Remote-Zweigstellenreferenzen undgit branch -d <branch-name>
Löschen des lokalen Zweigs (-D
Erzwingen). Neustart VSCode aktualisiert PaletteAntworten:
Anscheinend ist diese Funktion beabsichtigt. Ich habe herausgefunden, dass eine korrekte Methode zum Entfernen aller aus Github gelöschten Remote-Zweige darin besteht, den folgenden Befehl auszuführen.
Starten Sie dann Visual Studio neu, um die Zweige aus der Befehlspalette zu entfernen
quelle
origin/branch_name
aus dem Quick Switch Git-Menü auf VSCode. Wenn Sie beispielsweise einen lokalen Zweig habentest
und ihn an Github senden, gibt es zwei Zweigetest
.origin/test
Im Git-Zweigmenü entfernt der Prune nur denorigin/test
Zweig, nicht dentest
Zweig.git branch
ausführen oder auf den Namen des Zweigs klicken, um eine Dropdown-Liste mit allen verfügbaren Zweigen anzuzeigengit branch
nur die lokalen Zweige auf, dieser Befehl soll dieremotes/branch_name
Zweige entfernen . Versuchegit branch -a
alles zu sehen.Lokale Zweige können aus Visual Studio-Code entfernt werden, indem Sie die Befehlspalette (Strg-Umschalt-P) öffnen und dann Git: Zweig löschen ... auswählen. Anschließend können Sie den lokalen Zweig löschen, indem Sie den entsprechenden Zweig aus der Liste auswählen.
quelle
Von GitHub entfernte Zweige sind gut ... nur von GitHub entfernt. Sie haben noch eine lokale Kopie der Verzweigung auf Ihrem Computer. So löschen Sie den lokalen Zweiglauf
git branch -d the_local_branch
. Es gibt keinen Befehl in VS Code, aber Sie können das Terminal in VSCode mit demView: Toggle Integrated Terminal
Befehl starten und den Befehl von dort aus ausführen.Weitere Informationen zur Filialverwaltung finden Sie in der Git-Dokumentation unter https://git-scm.com/book/be/v2/Git-Branching-Branch-Management
quelle
Öffnen Sie die Befehlspalette (Strg + Umschalt + P) und wählen Sie Git: Fetch (Prune) .
Dieses Feature wurde fusioniert in VS - Code am 20. November 2018.
quelle
Ich habe die Frage folgendermaßen interpretiert: Wie kann ich meine zusammengeführten lokalen Zweige löschen , da ich Git Fetch (Prune) aus der Befehlspalette verwendet habe? Dies kann als "Hack" angesehen werden, aber ich benutze es. Im PowerShell-Terminal:
Falls Sie mit PoSH nicht vertraut sind, geschieht Folgendes: Die erste Zeile enthält den Namen aller zusammengeführten Zweige (mit Ausnahme von "Entwickeln" und "Master"), und die zweite Zeile durchläuft diese Liste und führt "git branch -d" aus ". Solange der Zweig vollständig zusammengeführt ist, sollten Sie Folgendes sehen:
für jeden Zweig. Gelegentlich stoße ich auf einen Zweig, der nicht gelöscht werden kann. In diesem Fall können Sie Folgendes ausführen: Sie können sicher sein, dass das Löschen sicher ist (dh Sie verlieren keine lokale Arbeit, die nicht gespeichert wurde):
Beachten Sie das Großbuchstaben D, das den lokalen Zweig zwangsweise löscht.
quelle
simple | complex
TeilungAlles was Sie tun müssen, ist diesen Befehl auszuführen:
Etwas Besonderes, das Sie tun können, weil es manchmal ärgerlich ist, ein Terminal nur dafür zu öffnen. Sie können eine Aufgabe in vscode hinzufügen.
Führen Sie dazu bitte die folgenden Schritte aus:
{"label": "Git Prune", "type": "shell", "command": "git remote prune origin", "problemMatcher": []}
Wie man es benutzt:
Referenz:
quelle
git remote prune origin
von der akzeptierten Antwort von abweichtgit fetch --prune
? Das Detail der Ausführungsaufgabe ist großartig, danke, dass Sie es veröffentlicht habenSie können alle lokalen Zweige (außer Master) entfernen mit:
git branch -r | grep -v "master" | xargs git branch -D
Und Sie können alle Zweige entfernen, die noch wie
origin/XXXX
in VSCode angezeigt, aber bereits gelöscht wurdenorigin
mit:Hinweis:
Der erste Befehl oben (entnommen aus https://stackoverflow.com/a/52006270/3120163 ):
quelle
Ich habe einen Weg gefunden, dies zu beheben. Sie müssen also die Fernbedienung entfernen, die mit dem Github-Repo verbunden ist, und dann die Fernbedienung erneut hinzufügen.
Alle aus Github gelöschten Zweige werden nicht mehr in vscode angezeigt. Angenommen, dies
origin
ist der Name für das Remote-Repo.Dann
quelle
Der kürzere Befehl lautet:
quelle