Если мы удалим ветку на сервере, можем ли мы автоматически удалить ее в нашей локальной копии?

Обычно, когда я отправляю Pull Requests на github, я создавал ветку, вносил свои изменения, а затем просил их объединить эту ветку с репо.

Как только это будет сделано, на Github я удаляю ветку (но github просто скрывает). Затем я навсегда удаляю ветку на сайте Github.

Теперь, когда удаленная ветвь исчезла, как я могу синхронизировать локальное репо с удаленным? Я попытался извлечь и вытащить, но это не удаляет ветви в моем локальном репо.

Придется ли мне вручную удалять их из репо, или есть какой-то способ синхронизировать их?

2 ответа

Решение

Вы можете попробовать:

git remote prune origin

(при условии, что удаленное 'origin' ссылается на ваш репозиторий GitHub)

Это объясняется в разделе " Очистка старых удаленных веток git " (git branch -d localbranch)

Я не знаю нативной команды git, которая бы выполняла оба.
Только скрипт вроде git_remote_branch "удалит ветку как на GitHub, так и локально

удалить (псевдонимы: уничтожить, убить, удалить, RM)

Удалите удаленную ветку, затем удалите локальную ветку.
Локальная ветка не удаляется, если есть ожидающие изменения.

$ grb delete branch_name [origin_server]

Другой вариант очистки (на вашем локальном) удаленных веток на сервере может быть

git fetch –p

Надеюсь это поможет.

Другие вопросы по тегам