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

Ошибка IntelliJ: origin 'origin/HEAD' не указывает на фиксацию, некоторые refs не могут быть прочитаны

Насколько я могу рассказать все в моем git локальном репозитории. Я могу совершать, толкать, тянуть, что мне нравится.

Однако, когда я просматриваю детали фиксации в журнале IntelliJ, Contained in branches:

Can not load branches due to error:
error: branch 'origin/HEAD' does not point at a commit 
error: some refs could not be read 
error: branch 'origin/HEAD' does not point at a commit 
error: some refs could not be read

Что могло быть причиной этого и как его исправить?

4b9b3361

Ответ 1

origin/head звучит так, как будто это относится к набору ветвей по умолчанию в репозитории удаленного источника. Например, когда я делаю git branch -a, я вижу, что это отображается в списке:

remotes/origin/HEAD -> origin/master

Возможно, вы не указали эту ссылку в своем локальном репо, или ваша локальная ссылка репо может быть устаревшей, если ветвь по умолчанию изменена на удаленном компьютере, а старый по умолчанию удален.

Возможное решение

Если это действительно является причиной ошибки IDE, вы можете вручную исправить ее, используя git symbolic-ref:

git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/<default-branch>

Где <default-branch> - это ветка, которая по умолчанию используется в вашем удаленном репо.

Обновленное решение

Итак, git имеет более удобную команду, которая может быть использована для обновления локального repo symbolic-ref до ветки по умолчанию в удаленном репо:

git remote set-head <remote> --auto

# Or shorter
git remote set-head <remote> -a

В было зафиксировано bc14fac для git 1.6.3 (май 2009 г.).

Устанавливает или удаляет ветвь по умолчанию ($GIT_DIR/remotes/<name>/HEAD) для именованный пульт.
Наличие ветки по умолчанию для удаленного не требуется, но позволяет указать имя пульта вместо конкретной ветки.
Например, если ветвь по умолчанию для origin установлена ​​на master, тогда origin может быть указана везде, где вы обычно указываете origin/master.