2011-07-14 13 views

Respuesta

41

Compruebe el usuario y el permiso en .git/logs/refs/heads /, tal vez haya ejecutado algo como root.

Explicación: (? Sudo) para poder ejecutar algunos comandos git como root nuevos archivos/directorios creados serán propiedad de la raíz, y por defecto [1] Otros usuarios no tienen permiso de escritura sobre estos archivos/directorios.

Cuando, más tarde, trabaja con ese repositorio, las cosas pueden aparecerá a trabajar, hasta el momento en que es necesario escritura a un archivo que fue, de hecho, creado por la raíz, es decir propiedad de raíz.

Esto debería solucionar, al menos en Linux:

sudo chown -Rc $UID .git/ 

También le mostrará todos los archivos que se cambió de dueños de.

[1] en una configuración de cuerdo, al menos

+0

gracias a los dos. Usted tenía razón. El comando sudo chown ayudó y ahora está bien. Tomás Teicher –

+6

Para usuarios de Mac: 'sudo chown -R $ UID .git /'. –

+0

@manakor pero luego "no le muestra ningún archivo que haya cambiado de propietario", por supuesto. Probablemente puedas obtener eso con 'find. -not -uid $ UID -ls -exec chown $ UID {} ​​+ '. – sehe

0

Compruebe el usuario y el permiso en .git/logs/refs/heads /, tal vez haya ejecutado algo como root.

0

sólo quería añadir para aquellos con el despliegue de Capistrano que debe trabajar con los directorios/.git aquí

/var/www/rails/production/shared/git_cache/.git 

y

/var/www/rails/production/current/.git 

Esto supone que está utilizando estos directorios y que está presionando a la producción ... pero debería hacerlo avanzar en la dirección correcta.

0

chown -R $ (whoami) /usr/local.git debería hacerlo. comando

-1

Linux:

  • sudo chown -Rc $ UID .git/
  • -u ID {} ​​sunombredeusuario

y el resultado: propiedad ha cambiado de' .git/envasados -refs 'desde la raíz hasta 1000

ha cambiado la propiedad de' .git/logs/HEAD 'de la raíz a 1000

ha cambiado la propiedad de '.git/logs/refs/heads/master' de root a 1000

ha cambiado la propiedad de '.git/logs/refs/mandos a distancia/origen/HEAD 'desde la raíz hasta 1000

cambiado de dueño de' .git/logs/refs/mandos a distancia/origen/master 'de la raíz a 1000

cambiado de dueño de'. git/objetos/pack/pack-b905d78889aea64ca69a61c0efaa76ba95b08786.idx 'desde la raíz hasta 1000

propiedad ha cambiado de' .git/objetos/pack/pack-b905d78889aea64ca69a61c0efaa76ba95b08786.pack 'desde la raíz hasta 1000

propiedad ha cambiado de'. git/objects/info/packs 'de root a 1000

cambió la propiedad de ‘.git/info/refs’ desde la raíz hasta 1000

0

uso

sudo chown -R youremailid .git/

Cuestiones relacionadas