Git bash:如何更改 MinTTY 配置文件的存储位置?

Posted

技术标签:

【中文标题】Git bash:如何更改 MinTTY 配置文件的存储位置?【英文标题】:Git bash: how to change where the MinTTY configuration file is stored? 【发布时间】:2018-04-26 21:11:53 【问题描述】:

我正在使用 Portable Git,但它仍会在我的用户主文件夹中创建一些文件。我想要完全的便携性。

我关注this answer 并将HOME 变量设置为指向我创建的文件夹PortableGit\home\user(其中PortableGit 是我的Git 安装文件夹)。现在我发现在我change the font size 之后创建的.minttyrc 配置文件仍然存储在我的用户主文件夹中,而不是\home\user

如何让 git-bash 在我指定的文件夹中存储和运行 MinTTY 的配置文件?

更改 HOME 变量成功地适用于全局 .gitconfig 文件。通过这个便携式 Git 安装,我将在我的计算机上的 repos 以及位于我的 USB 上的 repos 上工作,如果这些信息很重要的话......

【问题讨论】:

【参考方案1】:

考虑mintty wiki Tips:

对于它的配置文件,它依次读取/etc/minttyrc$APPDATA/mintty/config~/.config/mintty/config~/.minttyrc

对于配置颜色方案的资源文件、铃铛字符的波形文件或本地化文件,它会分别在 ~/.mintty~/.config/mintty、@ 目录之一中查找子文件夹主题、声音或语言987654328@、/usr/share/mintty,以先找到者为准。

~/.config/mintty 文件夹是 XDG 默认的基本目录。 $APPDATA/mintty 文件夹对于共享各种 mintty 安装(例如 cygwin 32/64 位、MSYS、Git Bash)的通用配置特别有用。

在您的情况下,请尝试将 C:\User\<yourLogin>\.minttyrc 移动到右侧的 HOME 文件夹,并通过再次启动 bash 会话来查看它是否被考虑在内。 确保HOME 已被定义为用户环境变量,并打开一个新窗口,以便继承所述环境变量的新值。

【讨论】:

我尝试从 C:\User\<yourLogin> 中删除 .minttyrc 并将其添加到 HOME 文件夹中,但 git-bash 似乎无法识别它,因为它仍然显示默认字体大小而不是那个我设置。在 git-bash 窗口中运行 echo $HOME 会显示新设置的主文件夹路径。 @vegzh 只是为了测试,你能不能把同一个配置文件移动并重命名为$APPDATA/mintty/config,看看是否考虑到这一点?【参考方案2】:

很抱歉删除了这个旧帖子,但我在其他任何地方都找不到解决方案,这可能对某人有用。


注意:向C:\Program Files\Git\etc 中的 PROFILE 文件添加 HOME 路径不会从默认安装文件夹重新定位/重新路径 .minttyrc。相反,您需要设置一个 Windows 环境变量


这适用于 Windows 10 专业版、Git 2.34.1

假设我希望 Git Bash 在C:\Users\Administrator\git 中读取我的.minttyrc,而不是默认安装位置,对我来说是C:\Users\Administrator

    打开控制面板

    在搜索框(我的屏幕右上角)中,输入:Advanced system settings

    然后在“系统”标题下,点击“查看高级系统设置”

    将打开一个系统属性框,并选择高级选项卡

    在此框的底部,单击环境变量。环境变量框将打开。

    如果您只是为自己添加一个 $home 变量,请单击“用户变量”下的“新建”

变量名称:HOME 变量值:您希望 .minttyrc 所在的自定义 git 文件夹的路径(对我来说,这是 C:\Users\Administrator\git
    在多用户系统上,点击“系统变量”下的“新建”
变量名称:HOME 变量值:%USERPROFILE%\path-to-your-custom-git-folder(对我来说,我会添加:%USERPROFILE%\git

现在 Git Bash 将读取配置设置并将其存储在您的自定义 Git 文件夹中的 .minttyrc

注意:您可能需要小心在系统变量中设置 HOME - 我不确定其他软件是否也可能使用 HOME 变量


替代方案:您可以通过在文件夹 C:\Program Files\Git\etc 中创建一个名为 minttyrc(无扩展名)的文件来设置全局“minttyrc”

使用此替代方法可以避免设置环境变量,但此位置minttyrc 中的设置将全局应用

【讨论】:

以上是关于Git bash:如何更改 MinTTY 配置文件的存储位置?的主要内容,如果未能解决你的问题,请参考以下文章

vscode 集成git bash, mingw, mintty 的terminal

Cygwin及Git的mintty终端配色配置

如何在 msys2/mintty 中配置默认​​ shell?

修改Git bash主题的方法

如何修复 git bash 错误异常:STATUS_ACCESS_VIOLATION

REVISIT:如何在msys2 / mintty中配置默认 Shell?