Здравствуйте. Несколько, возможно, наивных вопросов.
Есть Visual Studio 2017, к которой подключен GitLab. После удаления ветки на сайте GitLab я обновляю удаленный репозиторий в студии, а удаленная ветка по-прежнему видна в нем.
1. Я что-то делаю не так или такое поведение - это нормально?
2. Правильно ли я делаю, что создаю, удаляю и объединяю ветки на сайте или лучше скачать консольную утилиту, или лучше из среды разработки?
1) это нормально
компьютер всегда делает/показывает именно то что есть на самом деле, он никогда вас не обманывает
то что это не совпадает с вашими ожиданиями - обычно результат ошибочных представлений о механике вещей
2) и да и нет
разницы не будет пока вы не разберетесь с тем что существует remote репозиторий и ваша склонированная local верия этого репозитория
и если вы удаляете ветку из remote то с какой стати она должна пропасть из локальной версии автоматически? нужно как минимум сделать pull
то же самое с удалением ветки локально
вы можете это сделать но это не означает что что-то автоматически произойдет с remote репозитарием
то есть нужно сделать 2 вещи
- удалить локальную версию git branch -d branch_name
- пропихнуть это изменение в remote git push <remote_name> --delete <branch_name>
Akaero, я ж об этом и говорил в оригинальном посте
то что вы удалили что-то на сайте - НИКАК не влияет на локальную версию репозитория на вашем компьютере которую вам отображает студия
все ок. удаляем ветку НА САЙТЕ
смотрим еще раз $ git branch -l --remote
origin/master
origin/test
баг? не думаю(с). идем и смотрим $ git remote show origin
* remote origin
Fetch URL: <вырезано>
Push URL: <вырезано>
HEAD branch: master
Remote branches:
master tracked
refs/remotes/origin/test stale (use 'git remote prune' to remove)
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
вот оно что: рефы еще остались
удаляем их $ git remote prune origin