Ответы:
Чтобы обновить локальный список удаленных филиалов:
git remote update origin --prune
Показать все локальные и удаленные ветви, о которых (локальный) Git знает
git branch -a
git remote update origin --pruneэто то, что я искал,
git remote update, и принятым ответом, который использует git fetch, смотрите здесь
git fetchне удалил мой локальный кеш удаленных веток. Только --pruneсмог все это почистить.
git config remote.origin.prune true
git remote prune originимеет тот же эффект, и вы печатаете меньше.
Я полагаю, что если вы запустите git branch --allиз Bash, то список удаленных и локальных веток, которые вы увидите, будет отражать то, о чем «знает» ваш локальный Git во время выполнения команды. Поскольку ваш Git всегда актуален в отношении локальных филиалов в вашей системе, список локальных филиалов всегда будет точным.
Однако для удаленных филиалов это не должно иметь место. Ваш локальный Git знает только об удаленных ветвях, которые он видел при последней загрузке (или извлечении). Поэтому возможно, что вы могли бы запустить git branch --allи не увидеть новую удаленную ветку, которая появилась после того, как вы в последний раз загрузили или извлекли.
Чтобы убедиться, что ваш локальный и удаленный список ветвей обновлен, вы можете сделать git fetch перед запуском git branch --all.
Для получения дополнительной информации, «удаленные» ветви, которые появляются при запуске git branch --all, на самом деле совсем не удалены; они на самом деле местные. Например, предположим, что на пульте дистанционного управления есть ветвь, featureкоторую вы хотя бы раз вставили в локальный Git. origin/featureПри запуске вы увидите список как ветку git branch --all. Но эта ветка на самом деле является локальной веткой Git. Когда вы это сделаете git fetch origin, эта ветвь отслеживания будет обновляться с любыми новыми изменениями с пульта. Вот почему ваше местное состояние может устареть, поскольку могут появиться новые удаленные ветви или устаревшие ветви отслеживания.
git fetchсделал это.
git fetchне работает для меня, нужно добавить --prune. Кстати, я не downvoter;)
git fetchне удаляет удаленные ветки Вероятно, поэтому некоторые люди и проголосовали против
OP не запрашивал очистки для всех пультов, а для всех веток по умолчанию.
Так git fetch --pruneэто то, что следует использовать.
Настройка git config remote.origin.prune trueпроизводится --pruneавтоматически. В этом случае просто git fetchтакже удалит устаревшие удаленные ветви из локальной копии. Смотрите также Автоматическое удаление с помощью Git fetch или pull .
Обратите внимание, что это не очищает локальные ветви, которые больше не отслеживают удаленную ветку. Для этого смотрите Как удалить локальные ветви отслеживания, которые больше не существуют на удаленном компьютере .
git fetch -p
Используйте git fetchдля получения всех последних созданных веток.
git fetchничего не изменилось для меня с git 2.17.1. Какую версию и опции вы использовали?
--pruneили git config remote.NAME.prune trueдля этого, чтобы решить вопрос ОП
Если вы используете Eclipse и хотите видеть новые ветки от апстрима;
В перспективе Git щелкните правой кнопкой мыши Git-репозиторий и выберите «Получить из Upstream». Это приносит новые удаленные ветви.
Если вы используете Eclipse,
Они все должны быть там. Щелкните правой кнопкой мыши и «оформить заказ».
git ls-remoteможет быть интересно здесь.