Primeiro mostro o mesmo procedimento de forma normal diretamente:
git init
git add .
git commit -m "first commit"
Em um diretório normal ( ~/testGit
por exemplo), funciona sem problemas.
Quero fazer o mesmo no diretório /etc/nixos
.
Primeiro tenho que fazer isso:
git config --global --add safe.directory /etc/nixos
caso contrário, recebo esta mensagem:
fatal: propriedade duvidosa detectada no repositório em '/etc/nixos' Para adicionar uma exceção para este diretório, chame:
git config --global --add safe.directory /etc/nixos
Os 2 primeiros comandos funcionam bem, embora eu tenha que usar sudo
:
sudo git init
sudo git add .
mas o terceiro falha
sudo git commit -m "first commit"
Identidade do autor desconhecida
*** Por favor, diga-me quem você é.
Correr
git config --global user.email " [email protected] " git config --global user.name "Seu nome"
para definir a identidade padrão da sua conta. Omita --global para definir a identidade somente neste repositório.
fatal: não foi possível detectar automaticamente o endereço de e-mail (obteve 'root@nixos.(none)')
Claro que segui as instruções:
git config --global user.email "[email protected]"
git config --global user.name "MY Name"
mas ainda não funciona.
Estou executando o Nixos no VirtualBox. Não acho que seja importante, mas pelo menos você sabe.
git config --global
define coisas globalmente para o usuário , ou seja, em~/.gitconfig
, não para todo o sistema, como em/etc/git
ou algo assim. "Globalmente" significa realmente "para todos os repositórios git que este usuário acessa desta máquina".Execute os comandos git config
sudo
para definir as credenciais git do usuário root:Depois disso, se você usar um serviço externo como o github e autenticar com ssh, talvez seja necessário copiar sua chave ssh (ou melhor, criar uma nova para o root) e adicioná-la às
~/.ssh
configurações do root.Como o ssh realmente se preocupa com a propriedade e as permissões dos arquivos, você pode precisar
sudo chown -R root ~root/.ssh
esudo chmod 600 ~root/.ssh/*