В настоящее время у нас есть Git-репозитории на локальном диске.Они доступны группам и доступны через SSH (с помощью git-shell).
Из-за проблем с пространством мы теперь хотим переместить репозитории в общую папку NFS на NAS.Я экспериментировал с этим и столкнулся со странной проблемой.Свежий (и пустой) репозиторий с точно такими же разрешениями может быть клонирован нормально, но нажатие изменений (touch foo && git add foo && git commit && git push origin origin) завершается ошибкой «Не удалось установить refs /head / master"и" не удалось записать ".
Теперь, если я повторю этот сценарий на локальном диске, refs /head / master станет принадлежать любому пользователю, который нажал.И наоборот, на общем ресурсе NFS, если я изменю его владельца на пользователя, который пытается выдвинуть, ошибка не будет выдана.Однако в обоих случаях пользователь является членом группы, которая владеет всем хранилищем и имеет разрешение на запись в группу.Кроме того, если я просто войду в систему с использованием SSH как пользователь, который является членом этой группы, я могу коснуться refs /heads / master (как и следовало ожидать) как на общем ресурсе NFS, так и на локальном диске.
Следовательно, я здесь в недоумении.Я понятия не имею, почему другой владелец файла может привести к сбою push-сообщения, так как групповые разрешения позволяют пользователю перезаписывать refs /heads / master.Более того, даже если в этом файле есть chmod 777, загрузка не удастся, если я не скопирую файл.
Если кто-нибудь сможет пролить свет на эту странность, я буду очень признателен.Заранее спасибо!