Есть ли удобный способ заставить мое локальное git-репо забыть об удаленных ветках, которые были удалены?git svn fetch не "заново синхронизирует все", как я надеялся.Мое локальное репо было настроено с использованием импорта стандартного макета репозитория SVN (git svn -s …).
git svn fetch
git svn -s …
related: Почему git remote ничего не перечисляет в моем репозитории git-svn?
git remote
Вы можете удалить потерянные удаленные ветви, выполнив следующие команды:
git branch -d -r my_branch rm -rf .git/svn/refs/remotes/my_branch
Чтобы удалить все потерянные ветви сразу, а не по одной, см. Ответ здесь .
При первой же мысли я бы предложил попробовать git remote prune.Отрывок из документации :
git remote prune
обрезка Удаляет все устаревшие ветви удаленного отслеживания в.Эти устаревшие ветви уже удалены из удаленного репозитория, на который ссылается, но все еще доступны локально в «remotes /». С параметром --dry-run сообщать, какие ветви будут сокращены, но не сокращать их на самом деле.
обрезка
Удаляет все устаревшие ветви удаленного отслеживания в.Эти устаревшие ветви уже удалены из удаленного репозитория, на который ссылается, но все еще доступны локально в «remotes /».
С параметром --dry-run сообщать, какие ветви будут сокращены, но не сокращать их на самом деле.
Я думаю, что это также должно работать с пультом, называемым svn...
svn