W VSCode, po wykonaniu żądania ściągnięcia i usunięciu gałęzi na GitHub, ta gałąź nadal pojawia się w Visual Studio Code. Jeśli wybiorę gałąź, zgodnie z oczekiwaniami wyświetli się błąd.
Jak usunąć te teraz usunięte gałęzie z VSCode - czy mogę to zrobić automatycznie?
git fetch --prune
aktualizacji / usunięcia odwołańgit branch -d <branch-name>
do zdalnego oddziału i usunięcia lokalnego oddziału (-D
wymuszenie). Restart VSCode odświeża paletaOdpowiedzi:
Najwyraźniej ta funkcja jest zamierzona. Dowiedziałem się, że poprawnym sposobem na usunięcie wszystkich zdalnych gałęzi, które zostały usunięte z Github, jest uruchomienie następującego polecenia.
Następnie uruchom ponownie program Visual Studio, aby usunąć gałęzie z palety poleceń
źródło
origin/branch_name
z menu szybkiego przełączania git w VSCode. Na przykład, jeśli masz lokalną gałąźtest
i wypchniesz ją na Github, są dwie gałęzietest
, aworigin/test
menu git branch prune usuwa tylkoorigin/test
gałąź, a nietest
gałąź.git branch
lub kliknąć na nazwę oddziału, aby zobaczyć listę rozwijaną z wszelkich dostępnych gałęzigit branch
tylko lokalne gałęzie, to polecenie ma usunąćremotes/branch_name
gałęzie. Spróbujgit branch -a
zobaczyć wszystko.Lokalne gałęzie można usunąć z Visual Studio Code, otwierając paletę poleceń (Ctrl-Shift-P), a następnie wybierając Git: Usuń gałąź ... , możesz następnie usunąć lokalną gałąź, wybierając odpowiednią z listy.
źródło
Gałęzie usunięte z GitHub są dobrze ... właśnie usunięte z GitHub. Nadal masz lokalną kopię oddziału na swoim komputerze. Aby usunąć lokalny oddział, uruchom
git branch -d the_local_branch
. W programie VS Code nie ma polecenia, które mogłoby to zrobić, ale możesz uruchomić terminal w VSCode za pomocąView: Toggle Integrated Terminal
polecenia i uruchomić z niego polecenie.Więcej informacji na temat zarządzania oddziałami można znaleźć w dokumentacji git - https://git-scm.com/book/be/v2/Git-Branching-Branch-Management
źródło
Otwórz paletę poleceń (Ctrl + Shift + P) i wybierz Git: Fetch (Prune) .
Ta funkcja została włączona do VS Code 20 listopada 2018 r.
źródło
Zinterpretowałem to pytanie tak: jak mogę usunąć moje lokalne gałęzie, które zostały scalone, skoro używam Git Fetch (Prune) z palety poleceń. Można to uznać za „włamanie”, ale ja tego używam. W terminalu PowerShell:
Jeśli nie jesteś zaznajomiony z PoSH, oto co to robi: pierwsza linia pobiera nazwy wszystkich połączonych gałęzi (z wyjątkiem develop i master), a druga linia przechodzi przez tę listę i uruchamia "git branch -d ”. Dopóki gałąź jest całkowicie scalona, powinieneś zobaczyć:
dla każdego oddziału. Czasami napotykam gałąź, której nie można usunąć - jeśli tak się stanie i masz pewność, że można ją bezpiecznie usunąć (tj. Nie stracisz lokalnej pracy, która nie została zapisana), możesz uruchomić:
Zwróć uwagę na duże D - to wymusza usunięcie lokalnego oddziału.
źródło
simple | complex
divide😉Wszystko, co musisz zrobić, to uruchomić to polecenie:
Coś dodatkowego, co możesz zrobić, ponieważ czasami denerwuje się otwieranie terminala tylko w tym celu ... możesz dodać zadanie w vscode.
Aby to zrobić, wykonaj następujące kroki:
{"label": "Git Prune", "type": "shell", "command": "git remote prune origin", "problemMatcher": []}
Jak tego użyć:
Odniesienie:
źródło
git remote prune origin
różni się od zaakceptowanej odpowiedzigit fetch --prune
? Szczegóły zadania Run są świetne, dziękujemy za opublikowanieMożesz usunąć wszystkie lokalne oddziały (poza głównym) za pomocą:
git branch -r | grep -v "master" | xargs git branch -D
Możesz usunąć wszystkie gałęzie, które nadal pojawiają się jak
origin/XXXX
w VSCode, ale zostały już usunięte zaorigin
pomocą:Uwaga:
Pierwsze polecenie powyżej (pobrane z https://stackoverflow.com/a/52006270/3120163 ):
źródło
Znalazłem sposób, aby to naprawić. Musisz więc usunąć pilota, który łączy się z repozytorium Github, a następnie ponownie dodać pilota.
Wszystkie gałęzie usunięte z Github nie będą już wyświetlane w vscode. Zakładając, że
origin
jest to nazwa zdalnego repozytorium.Następnie
źródło
Krótsze polecenie to:
źródło