2016-02-10 8 views
1

Я работаю в этом git repo уже несколько недель и был единственным, кто его использовал. Предыдущий работник все собрал, а потом передал мне позже после того, как он перешел. Все работает прекрасно, пока в один прекрасный день, когда я не делал новые изменения и пошел git push и получил эту ошибкуОшибка Git Push - недостаточное разрешение

Counting objects: 5, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (5/5), done. 
Writing objects: 100% (5/5), 442 bytes | 0 bytes/s, done. 
Total 5 (delta 4), reused 0 (delta 0) 
remote: error: insufficient permission for adding an object to repository database ./objects 
remote: fatal: failed to write object 
error: unpack failed: unpack-objects abnormal exit 
To [email protected]:/path/to/repo.git 
! [remote rejected] master -> master (unpacker error) 
error: failed to push some refs to '[email protected]:/path/to/repo.git' 

Я смотрел на это и нашел некоторые решения людей, дающих. Так что я нашел это:

ssh [email protected] 
cd repository/.git 

sudo chmod -R g+ws * 
sudo chgrp -R mygroup * 

git config core.sharedRepository true 

Но, я не знаю, что mygroup есть, и я не уверен в том, как найти то, что это имя. Есть ли другие решения этой проблемы или кто-нибудь может показать мне, как найти название группы? Благодарю.

ответ

1

В Unix-подобных системах каждый пользователь может принадлежать любому числу «groups». (Это концепция уровня ОС, а не концепция Git).

Предполагая, что вы находитесь на Unix-подобной системы, чтобы определить, какие группы вы принадлежите использовать команду:

groups 

Если вы знаете, какой один из получившихся групп использовать, а затем использовать это для chgrp команда.

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

+0

Спасибо, это сработало! – Tom