我试图添加一个新的终端(Git Bash)到新的Windows终端。然而,我不能让它工作。

我尝试将profiles数组中的命令行属性更改为git-bash.exe,但没有运气。

有人知道怎么让它工作吗?


当前回答

据我所知,我目前的windows终端版本为1.15.2874.0,你可以通过简单的手动单击来配置它。 前提条件是

安装git bash客户端。 Windows终端版本1.15.2874.0及以上。

然后按照以下步骤完成设置。

Open windows terminal and find "Settings" in the drop-down list in the top right corner of the menu bar (or use the shortcut ctrl+,); Click on "Add new profile" at the bottom of the left hand column, then the settings template screen will pop up automatically. interactive mouse click you want to set the "name", "executable path command line", "startup directory", "icon" value. For example, I set mine to "gitBash", "C:\Program Files\Git\bin\bash.exe", "%USERPROFILE%", and "%USERPROFILE%" in order of customisation. "C:\Program Files\Git\mingw64\share\git\git-for-windows.ico". save.

以下截图仅供参考。

其他回答

对于那些可能错过bash历史的人: 在已经打开的git bash中,尝试启动另一个bash -如果env vars配置正确,应该会加载您的配置文件

如果这是你的情况,你可以通过在启动时添加以下命令行来自动化它:

C:\progra~1\git\usr\bin\bash.exe --login -l -i -c /c/progra~1/git/usr/bin/bash.exe

据我所知,我目前的windows终端版本为1.15.2874.0,你可以通过简单的手动单击来配置它。 前提条件是

安装git bash客户端。 Windows终端版本1.15.2874.0及以上。

然后按照以下步骤完成设置。

Open windows terminal and find "Settings" in the drop-down list in the top right corner of the menu bar (or use the shortcut ctrl+,); Click on "Add new profile" at the bottom of the left hand column, then the settings template screen will pop up automatically. interactive mouse click you want to set the "name", "executable path command line", "startup directory", "icon" value. For example, I set mine to "gitBash", "C:\Program Files\Git\bin\bash.exe", "%USERPROFILE%", and "%USERPROFILE%" in order of customisation. "C:\Program Files\Git\mingw64\share\git\git-for-windows.ico". save.

以下截图仅供参考。

另一个需要注意的项目-在settings.json中 我发现如果你不使用 "commandline": "C:/Program Files/Git/bin/bash.exe"

取而代之的是: "commandline": "C:/Program Files/Git/ Git -bash.exe"

Git shell将在Windows终端之外的一个独立窗口中打开,而不是在一个选项卡中打开——这不是理想的行为。 此外,Windows终端中打开的选项卡也需要手动关闭,因为它将显示退出的进程信息-[退出的进程的代码为3221225786]等。

可能会让人头疼

现在是2021年9月,谢天谢地,最新的Windows Git安装安装程序(我使用的是2.33.0.2)已经为我们覆盖了这个选项,为了我们的懒惰(当然也为了方便!)

请在安装Git之前先安装Windows终端,虽然我没有尝试过相反的方法,但最好遵循合理的顺序。如果安装顺序不是这样,请让我知道更新这个答案。

您可能会在安装阶段Select Components的底部发现这个少量复选框,只需勾选那里的复选框,就可以开始了。

设置。json文件将自动添加到Git Bash配置文件中,并带有正确的Git Bash图标。我生成的Git Bash配置文件非常标准和简洁。

{
    "guid": "{2ece5bfe-50ed-5f3a-ab87-5cd4baafed2b}",
    "hidden": false,
    "name": "Git Bash",
    "source": "Git"
}

如果Windows终端正在运行,请关闭并再次启动,以便Git Bash选项可见。

搞Linux的,抱歉我来晚了;我只是第一次安装git-bash,并研究它的命令应该在Windows终端中。

据我所知

Cygwin is not Windows, but it provides a POSIX translation layer (cygwin*.dll) so that all those non-Windows executables can run. Even when a new computer program is compiled and built with cygwin, it still turns out a non-Windows executable and it still needs cygwin*.dll to run. MSYS2 is mostly Windows with only a few tools that are probably difficult to port remaining non-Windows and requiring a POSIX translation layer to run (msys*.dll); but, most programs are actually Windows native executables. Even when a new computer program is compiled and built, it is my understanding that turns out a Windows native *.exe.

但我仍然不知道这些MSYSTEM*和MINGW*环境变量是否设置有多重要,当我要使用MINGW编译器时,无论如何。

我确实注意到,在整个线程中,两个命令行都不断出现,即./bin/bash和./usr/bin/bash;所以,我把它们发射出去,比较它们的环境……结果可能会大不相同。

要知道,在启动下面的任何shell之前,我已经有C:\Git\mingw64\bin和C:\Git\usr\bin作为系统变量PATH的一部分;我这样做是因为我希望能够直接从CMD使用bash命令。但我不认为这对下面的结果有任何影响。

                                        c:\Git\bin\bash.exe --login     c:\Git\usr\bin\bash.exe --login
Environment Variable    c:\Git\bin\bash.exe                     c:\Git\usr\bin\bash.exe
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
EXEPATH                 c:\git\bin      c:\git\bin              n       n
HOSTNAME                n               MDXXXXXX                n       MDXXXXXX
MINGW_CHOST             n               x86_64-w64-mingw32      n       n
MINGW_PACKAGE_PREFIX    n               mingw-w64-x86_64        n       n
MINGW_PREFIX            n               /mingw64                n       n
MSYSTEM_CARCH           n               x86_64                  n       x86_64
MSYSTEM_CHOST           n               x86_64-w64-mingw32      n       x86_64-pc-msys
MSYSTEM_PREFIX          n               /mingw64                n       /usr
MSYSTEM                 MINGW64         MINGW64                 n       MSYS
PLINK_PROTOCOL          ssh             ssh                     n       n
SHELL                   n               /usr/bin/bash           n       /usr/bin/bash
TMPDIR                  n               /tmp                    n       /tmp

ORIGINAL_PATH           n               y                       n       y
ORIGINAL_TEMP           n               y                       n       y
ORIGINAL_TMP            n               y                       n       y
PATH                    /mingw64/bin:/usr/bin:$HOME/bin:$PATH
PATH                                    $HOME/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:$HOME/bin:$PATH
PATh                                                            $PATH
PATH                                                                    $HOME/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:$PATH

因此,在我看来,更正确的做法是使用。/bin/bash——login;但此时此刻,我不确定会有什么不同,比如说,当真正使用MINGW64/GCC编译一个全新的程序时;让我们拭目以待。