git - 如何将 git 与不同于 $HOME/.gitconfig 的配置文件一起使用?
问题描述
除了我的标准之外$HOME/.gitconfig
,我还有一个替代的“全局”git
配置文件,$HOME/.gitconfig2
我更喜欢在某些情况下使用它。
我还没有找到一个好的方法来告诉git
使用$HOME/.gitconfig2
而不是$HOME/.gitconfig
. 我能想到的最好的方法是首先创建一个合适的命名符号链接$HOME/.gitconfig2
,如下所示:
% mkdir $HOME/.githack
% ln -s $HOME/.gitconfig2 $HOME/.githack/.gitconfig
...然后git
像这样调用:
% HOME=$HOME/.githack git ...
...从而欺骗git
寻找.gitconfig
under $HOME/.githack
。
有更好的方法吗?
此外,是否有文档说明为什么git
不提供命令行标志(甚至专用环境标志)来覆盖用户的“全局”(而不是每个存储库)git
配置文件的位置?1
1我的猜测是,这与“自举”有关;例如,可能是为了处理它的命令行标志和/或环境变量,git
首先需要读取用户的配置文件,因此它不能使用这些标志或环境变量中的信息来确定配置文件。
解决方案
有几种方法可以从全局配置文件中包含git help config
配置文件:阅读.
如果您的“某些情况”可以是:“git 存储库位于$HOME/special/projects
目录下”,您可以使用:
[includeIf "gitdir:~/special/projects/"]
path = ~/.gitconfig2
推荐阅读
- windows - 批量打开 & 重启 Explorer.exe & 然后恢复所有窗口
- javascript - 当放大触摸设备时,页面放大而不是地图传单
- azure-iot-edge - 如何允许 Azure IoT 边缘模块执行 http 请求?
- css - 渐变边框有切片,但仍然只显示角落
- firebase - Firebase Cloud Functions 检查值不为空
- php - Laravel - 基于类别显示产品但无法在刀片文件中显示类别名称
- php - 为什么使用 ffmpeg 将比特率从 124 转换为 96 会减少我的 mp3 文件的持续时间?
- javascript - 正则表达式反应问题,无法让正则表达式正确选择我的 ahref
- python - 在python中运行减法时出现语法错误
- node.js - Node.JS + Typescript - 使用 module.exports 设置数据库配置有效