Problema de permissions cuando se tira desde GitHub

He clonado un repository de GitHub en un nuevo directory en mi máquina local usando:

git clone [email protected]github.com:*****/project.git destination-dir 

El clon funcionó bien, pero cada vez que bash tirar o empujar recupero este error:

 error: insufficient permission for adding an object to repository database .git/objects fatal: git write-tree failed to write a tree 

¿Qué he hecho mal? ¿Y cómo puedo solucionar esto? De lo que leí hasta ahora en línea, el problema es trivial si está utilizando su propio repository (es decir, no GitHub), pero ¿qué debo hacer si esto en GitHub (no hay acceso ssh).

Además, debo agregar que tengo otro directory en mi máquina apuntando al mismo repository en GitHub, que está bien para tira y empuja.

Esto no parece relacionado con GitHub per-se.

Por lo que dices en los comentarios, parece que los permissions de escritura dentro de la carpeta oculta .git (que contiene todos tus datos del repository git local) no correspondían a los permissions que tu cliente git tenía cuando lo ejecutaste.

Puede ser que hayas clonado el repository con una count de usuario (o con sudo ), pero al intentar tirar / empujar desde un usuario diferente. Si ese no fuera el caso, algo podría haber alterado los permissions de tus files locales durante la clonación.

Como dijiste, haciendo chown -R login:group projectDir/ solucionó el problema porque restablecía recursivamente todos los permissions en tu carpeta de proyectos (incluidos los de la carpeta .git y sus contenidos).


Un buen experimento sería tratar de clonar el mismo repository en una carpeta diferente para ver si el problema vuelve a ocurrir. Si lo hace, tal vez algo esté mal con su permiso de usuario pnetworkingeterminado y / o sus permissions de cliente git.