我正在将 git 与 etckeeper 一起使用。
当我使用 sudo git 提交更改时/etc/
,将使用我的环境中的 GIT_AUTHOR_NAME 和 GIT_AUTHOR_EMAIL(按预期)。
当我使用sudo apt-get
并且更改自动提交时,将使用本地用户名@主机。
为什么行为会发生改变以及我如何sudo apt-get
使用 ENV 变量?
答案1
好像此问题已在 etckeeper 1.5 中修复. 事件发生在/etc/etckeeper/commit.d/50vcs-commit
:
if [ "$VCS" = git ] && [ -d .git ]; then
if [ -n "$USER" ]; then
export GIT_AUTHOR_NAME="$USER"
export GIT_AUTHOR_EMAIL="$USER@$hostname"
fi
if [ -n "$logfile" ]; then
git commit $GIT_COMMIT_OPTIONS -F "$logfile"
else
git commit $GIT_COMMIT_OPTIONS
fi
[ ... ]