我已经安装了适用于 Windows 的 Git。
我想在 Windows 终端选项卡中运行 git-bash。
我最初在 Windows 终端中配置了一个 git-bash 配置文件,Command Line
我填充了其字段,C:\Program Files\Git\git-bash.exe
因为我注意到Git Bash
Git Bash 安装程序安装的快捷方式指向该可执行文件。
结果是,当我尝试打开一个新的 git-bash标签,Windows Terminal 会以新方式打开 git-bash shell窗户。我更希望 shell 在新选项卡中打开,而不是在新窗口中打开。
各种帖子超级用户和堆栈溢出描述人们对所描述行为的烦恼,常见的解决方法似乎是将字段更改Command Line
为C:\Program Files\Git\bin\bash.exe
而不是C:\Program Files\Git\git-bash.exe
,这在我的情况下也有效。
我的问题是为什么使用 是否C:\Program Files\Git\git-bash.exe
会导致终端在新窗口中打开?C:\Program Files\Git\bin\bash.exe
和之间是否有任何功能差异C:\Program Files\Git\git-bash.exe
? 使用前者而不是后者会有什么损失吗?
我不认为这个问题是其他问题的复制品,因为那些问答没有讨论为什么这种行为就是这样的——他们只提到如何如何解决。
bash.exe
如果和之间存在功能差异git-bash.exe
,是否有任何方法可以git-bash.exe
在新的 Windows 终端中打开标签而不是新的窗户?
答案1
当然是不一样的。
git bash 工具
git-bash.exe
是终端基于 mintty 的可执行文件。我不会解释什么是终端(和 shell),因为互联网上有很多关于它的资料(例如,参见这个问题:shell、控制台、终端有什么区别?),我只想简单提一下,这个可执行文件基本上是为了向用户提供一个带有选项的 GUI 窗口。因此,启动它时总会打开一个新窗口。
执行程序
bash.exe
是壳可执行文件。其主要目标是处理/解释用户提供的命令。它可以挂接到支持它的任何终端,包括Windows 终端。
功能差异
如果你选择 ,你会失去什么吗bash.exe
?好吧,你肯定无法使用 Git Bash 的终端偏好设置,如果你在其选项..菜单:
您还将失去终端提供而 Windows Terminal 不提供的任何 GUI 功能。但由于 Windows Terminal 是一个更现代的终端,我怀疑它对大多数用户来说没有任何意义。
除此之外,您不会失去任何功能。