Предупреждение: игнорирование неработающих ref refs/remotes/origin/HEAD
Начиная с нескольких дней назад, каждый раз, когда я нажимаю клавишу tab для завершения имен ветвей в bash, я вижу сообщение:
предупреждение: игнорирование неработающего ref refs/remotes/origin/HEAD предупреждение: игнорирование неработающих ref refs/remotes/origin/HEAD
Например, это то, что я вижу, когда у меня есть ветвь с именем feature/foo, и я нажимаю tab:
git checkout f
$ git checkout fwarning: ignoring broken ref refs/remotes/origin/HEAD
warning: ignoring broken ref refs/remotes/origin/HEAD
eature/
Ответы
Ответ 1
Я столкнулся с этим недавно, когда кто-то из моей команды удалил нашу ветку разработки с удаленного. Я выполнил эту команду, чтобы проверить состояние HEAD:
$ git symbolic-ref refs/remotes/origin/HEAD
refs/remotes/origin/old_dev
Эта команда выводит имя старой ветки разработки, которая больше не существует.
Я исправил предупреждения, используя это:
$ git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/new_dev
(Где "new_dev" - имя ветки. Замените его именем ветки, на которую хотите указать HEAD.)
Ответ 2
Это более простое решение, чем symbolic-ref.
Так как вы, возможно, исключили ветку, на которую первоначально указывалось origin/HEAD.
1. Список удаленных веток:
git branch -r
2. Если это не показано в результатах:
origin/HEAD -> origin/(something)
3. Просто укажите еще раз:
git remote set-head origin master
где "master" - это имя вашей основной (головной) ветки.
Запуск git branch -r
снова теперь показывает origin/HEAD -> origin/(something)
, и предупреждение уходит.
Ответ 3
Похоже, что ветвь по умолчанию вашего удаленного устройства origin
больше не существует.
Исправьте ветвь по умолчанию пульта дистанционного управления:
Ответ 4
Просто запустите команду -
git remote set-head origin master
Enjoy!