что не так с мерзавцем?
От: B0FEE664  
Дата: 24.10.19 16:21
Оценка:
Последний год всё глубже погружаюсь в дебри git.

Вчера уткнулся в совершенно неожиданное ограничение.
Допустим я взял с некого сервера исходники:


cd /users/aaa/src
git clone ssh://....

Потом перешёл в другой каталог и сделал клон клона:

cd /users/aaa/
mkdir klon
cd klon
git clone file:///users/aaa/src


потом изменил файл в /users/aaa/klon ...

следующие команды проходят:

cd /users/aaa/klon/prj
git add .
git commit -m "test"


А вот git push ломается со словами:

refusing to update checked out branch: ....
By default, updating the current branch in a non-bare repository
is denied, because it will make the index and work tree inconsistent
with what you pushed, and will require 'git reset --hard' to match
the work tree to HEAD.


Что это? Почему? Как это может быть, чтобы index and work tree могли поломаться? Ни рабочие файлы, ни staging area никак не могут быть задеты! Ведь эта команда ничем по смыслу не отличается от выполнения git fetch в /users/aaa/src. Бред какой-то!
И каждый день — без права на ошибку...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.