При попытке сделать pull git ругается unable to update local ref
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks fetch --tags origin
error: cannot lock ref 'refs/remotes/origin/fix/china': 'refs/remotes/origin/fix/china/enable-blablabla' exists; cannot create 'refs/remotes/origin/fix/china'
From https://github.blablabla.net/blablabla/blablabla
! [new branch] fix/china -> origin/fix/china (unable to update local ref)
Completed with errors, see above.
Как это можно исправить?
Пробовал:
$ git gc --prune=now
$ git remote prune origin
Но не помогло
Ответы (1 шт):
Автор решения: Герман Борисов
→ Ссылка
Создание локальной копии ссылки (ветки или тэга) refs/remotes/origin/fix/china/enable-blablabla при выполнении fetch (и pull) сопровождается созданием локального файла .git/refs/remotes/origin/fix/china/enable-blablabla, соответственно все / превращаются в разделители каталогов. То есть у вас есть, в том числе, каталог .git/refs/remotes/origin/fix/china, и, соответственно, создать файл .git/refs/remotes/origin/fix/china уже невозможно, это имя занято каталогом.
Переименовывайте одну из веток в репозитории, из которого делаете fetch