Удаленные ветви git не показываются с `git branch -r`? - PullRequest
18 голосов
/ 22 августа 2010

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

Ответы [ 3 ]

32 голосов
/ 03 октября 2012

У меня была такая же проблема, я не мог получить удаленные ветки в одном из моих локальных каталогов. 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
9 голосов
/ 22 августа 2010

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

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
2 голосов
/ 22 августа 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...