动态 git config user.name - 取决于主机名

Mic*_*Mic 7 git config dynamic

git从两台电脑使用。

我想要:

  • ~/.gitconfig在两台计算机上使用相同的文件。
  • user.name对一台计算机或另一台计算机的提交有不同的看法。

总之,我希望能够有一些像user.name = "Mic - #{Hostname}",用Hostname被动态读取。

有没有办法实现这一目标?

我看到的唯一另一种方法是手动更改user.name我在这两台计算机上使用的每个 git repo 上的 - 但我觉得它不干净。


针对这种情况的解决方案:似乎没有内置解决方案,因为 git 不会自动扩展配置参数。因此,按照以下建议,在导入新的(共享)后,我只需在部署脚本中发出以下命令~/.gitconfig

git config --global user.name "Mic [`hostname`]"
Run Code Online (Sandbox Code Playgroud)

这样, git name 总是更新。

根据你的配置,你也可以把它放在你的~/.bashrc~/bash_profile你使用的任何东西中- 尽管它看起来有点矫枉过正。

Xet*_*ius 3

Git 不会在配置文件中进行变量扩展。

为此,您可以在 .profile 或您用来调用的任何启动文件中添加一行

git config --global user.name ${GIT_USER_NAME}
git config --global user.email ${GIT_USER_EMAIL}
Run Code Online (Sandbox Code Playgroud)

并在调用此之前设置这些。