当将sudo
与git
命令一起使用时,我注意到:
sudo git push
使用root
用户的 SSH 密钥。但
sudo git commit [etc..]
使用为原始用户帐户配置的 Git 作者。
为什么会这样?sudo
如何决定在什么环境中做事?
ssh 键和 git author 是两回事。
- 一个完全取决于ssh,它将始终使用
~/ssh/id_rsa(.pub)
- 另一个由 git 管理,并且将是
git config user.name
中提到的那个,除非有GIT_AUTHOR_NAME
环境变量。
无论是否使用sudo
。
git config user.name
和 ' env
' 是您在确定在提交期间使用作者时需要检查的两个设置。 sudo
与否。