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

标签 git dynamic config

我在两台电脑上使用 git

我愿意:

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

简而言之,我希望能够拥有类似user.name = "Mic - #{Hostname}" 的内容,其中包含Hostname 被动态读取。

有办法实现吗?

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


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

git config --global user.name "Mic [`hostname`]"

这样,git 名称就会始终更新。

根据您的配置,您还可以将其放入您的 ~/.bashrc 或您使用的任何 ~/bash_profile - 虽然它看起来有点矫枉过正。

最佳答案

不要将名称存储在 ~/.gitconfig 中,而是在你的 ~/.bash_profile 中设置环境变量:

GIT_AUTHOR_NAME="Mic - $HOSTNAME"
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
export GIT_AUTHOR_NAME GIT_COMMITTER_NAME

关于git - 动态 git 配置 user.name - 取决于主机名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50346528/

相关文章:

c++ - 作为 DLL 的 GIT C/C++ 库

Java动态、静态转换

php - 从动态 jquery 表单字段向 mysql 添加行

powershell - 如何将解析路径与另一个目录连接

java - CloudBees XML 配置与命令行工具

java - 使用Java中aws配置文件中定义的role_arn

Git stash 删除添加的更改

c++ - 在 C/C++ 源代码中包含 Git 提交哈希和/或分支名称

c - 每个包含动态数组的结构数组

git - 如何从 BitBake 配方中克隆私有(private) git 仓库?