Ошибка при git push?
Ошибка из-за того, что Git по умолчанию не разрешает обновлять текущую ветку не bare-хранилища посредством push.
На сервере либо инициализируем хранилище так:git init --bare
Это создаст хранилище без рабочей копии (bare хранилище)
Либо задаём в конфиге хранилища:
[receive]
denyCurrentBranch = ignore (или warn)
Чтобы можно было пушить в текущую ветку не bare хранилища.
Второй способ не рекомендуется, так как может привести к конфликтному состоянию рабочей копии.
Если на сервере должна быть рабочая копия, то только второй способ либо сделать bare-хранилище, куда пушить с клиента (оно будет точкой синхронизации), а в месте, где нужна рабочая копия, склонировать первое хранилище и периодически из него делать pull.Bare-хранилище
иногда проще использовать server$ git checkout --detach
laptop$ git push master
servet$ git stash
server$ git checkout master
Если вы понимаете что такое DETACHED HEAD
https://git-scm.com/docs/git-checkout/