W repozytorium git usunięto zdalną gałąź, której nie śledzę. Kiedy piszę
git branch -r
usunięta gałąź nadal się pojawia (i mogę to sprawdzić)
Jakie polecenie git muszę uruchomić, aby zaktualizować te informacje?
Jeśli wykonasz coś takiego jak
git branch -d -r remote_name/branch_name
usuwasz tylko lokalną kasę. To polecenie nie robi nic ze zdalnym repozytorium, dlatego nadal się pojawia.
Rozwiązanie:
git push origin :branch_name
usunie zdalną gałąź (zwróć uwagę na „:”) i
git branch -d branch_name
usunie Twoją lokalną kasę.
( Odniesienie )
git push <remote> --delete <branchname>
do usuwania zdalnych gałęzi.Jeśli były to gałęzie w zdalnym repozytorium, które zostały usunięte i chcesz zaktualizować wszystkie lokalne gałęzie zdalnego śledzenia naraz, możesz użyć
aby usunąć wszystkie przestarzałe gałęzie zdalnego śledzenia dla danego zdalnego (tj. te, które następują po gałęziach, które zostały usunięte w zdalnym repozytorium).
Zobacz
git remote
dokumentację.źródło
git fetch
?git gc
po prostu pakuje obiekty i odniesienia i usuwa obiekty, do których nie ma odniesień (z pewnym marginesem bezpieczeństwa).Należy odświeżyć wszystkie gałęzie pilotów, dodawać nowe i usuwać usunięte.
Edycja: Polecenie zdalnej aktualizacji zasadniczo pobiera listę gałęzi na pilocie. Ta
--prune
opcja usunie lokalne zdalne gałęzie śledzenia, które wskazują gałęzie, które już nie istnieją na zdalnym .źródło
Przydatne również do przeglądania nowych zdalnych oddziałów:
źródło
Możesz połączyć flagi
-r
i,-d
aby usunąć zdalne gałęzie.źródło
Spróbuj tego polecenia
źródło