Після того, як ви додасте кілька речей ... виконайте їх і, нарешті, готові натисніть! БАНГ !! Почніть всі проблеми ... Як слід зауважити, є певні відмінності у визначенні як нових, так і існуючих проектів. Якщо хтось інший спробує додати / зробити / пересувати ті самі файли чи вміст (git зберігати обидва як однакові об’єкти), ми зіткнемося з такою помилкою:
$ git push
Counting objects: 31, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (17/17), done.
Writing objects: 100% (21/21), 2.07 KiB | 0 bytes/s, done.
Total 21 (delta 12), reused 0 (delta 0)
remote: error: insufficient permission for adding an object to repository database ./objects remote: fatal: failed to write object
Щоб вирішити цю проблему, ви повинні мати на увазі систему дозволів операційної системи, оскільки ви її обмежуєте в цьому випадку. Щоб краще зрозуміти проблему, продовжуйте перевіряти папку вашого git object (.git / objects). Ви, мабуть, побачите щось подібне:
<your user_name>@<the machine name> objects]$ ls -la
total 200
drwxr-xr-x 25 <your user_name> <group_name> 2048 Feb 10 09:28 .
drwxr-xr-x 3 <his user_name> <group_name> 1024 Feb 3 15:06 ..
drwxr-xr-x 2 <his user_name> <group_name> 1024 Jan 31 13:39 02
drwxr-xr-x 2 <his user_name> <group_name> 1024 Feb 3 13:24 08
* Зауважте, що дозволи цих файлів надані лише вашим користувачам, і ніхто їх ніколи не може змінити ... *
Level u g o
Permission rwx r-x ---
Binary 111 101 000
Octal 7 5 0
РЕШЕННЯ ПРОБЛЕМИ
Якщо у вас є дозвіл суперкористувача, ви можете піти вперед і самостійно змінити всі дозволи, скориставшись другим кроком; в будь-якому іншому випадку вам потрібно буде попросити всіх користувачів з об’єктами, створеними разом з їх користувачами, скористайтеся наступною командою, щоб знати, хто вони :
$ ls -la | awk '{print $3}' | sort -u
<your user_name>
<his user_name>
Тепер вам і всім користувачам власника файлу доведеться змінити цей дозвіл, роблячи:
$ chmod -R 774 .
Після цього вам потрібно буде додати нове властивість, еквівалентне --shared = group, зроблене для нового сховища, згідно з документацією, це зробить групу репозиторію придатною для запису, зробіть це:
$ git config core.sharedRepository group
https://coderwall.com/p/8b3ksg
git add
іgit commit
-ing як користувача root. Я виправив це з відповіддю наgit reset
це запитання, щоб виправити.git
права доступу до каталогу.