Подтвердить что ты не робот

Удаленные ветки git не показаны с `git branch -r`?

У меня есть две директории на моей локальной машине, указывающие на один и тот же удаленный репозиторий git. Когда я выдаю команду git branch -r в одном из каталогов, я получаю более длинный список удаленных ветвей, а затем в другом каталоге. Как это возможно?
Похоже, что некоторые из удаленных ветвей "скрыты" в одном каталоге и видны в другом.

4b9b3361

Ответ 1

У меня была такая же проблема, я не мог получить удаленные ветки в одном из моих локальных каталогов. git branch -r будет показывать меньше ветвей, а также не самое верхнее изменение, в то время как в другом каталоге все хорошо освежалось.

Чтобы исправить это, я сделал git config -l в обоих каталогах и выяснил, что мне не хватает параметра remote.origin.fetch. Выполнение следующей строки исправило мою проблему:

git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
git fetch 

From github.com:username/test2
   2bd5e5e..2619d39  master     -> origin/master
 * [new branch]      remotebr2  -> origin/remotebr2
 * [new branch]      remotebranch -> origin/remotebranch

Ответ 2

Я думаю, вы должны получить и обрезать:

prune 
Deletes all stale tracking branches under <name>. These stale branches have already been removed from the remote repository referenced by <name>, but are still locally available in "remotes/<name>". 

With --dry-run option, report what branches will be pruned, but do not actually prune them.

С помощью этой командной строки:

git fetch
git remote prune origin

Ответ 3

Являются ли оба хранилища актуальными? Попробуйте запустить git fetch и проверьте, исправляет ли он это.