Adding Git-Bash To The New Windows Terminal
Answer :
Overview
- Open settings with
ctrl + ,
- You'll want to append one of the profiles options below (depending on what version of git you have installed) to the
"list":
portion of thesettings.json
file
{ "$schema": "https://aka.ms/terminal-profiles-schema", "defaultProfile": "{00000000-0000-0000-ba54-000000000001}", "profiles": { "defaults": { // Put settings here that you want to apply to all profiles }, "list": [ <put one of the configuration below right here> ] } }
Profile options
Uncomment correct paths for commandline
and icon
if you are using:
- Git for Windows in
%PROGRAMFILE%
- Git for Windows in
%USERPROFILE%
- If you're using scoop
{ "guid": "{00000000-0000-0000-ba54-000000000002}", "commandline": "%PROGRAMFILES%/git/usr/bin/bash.exe -i -l", // "commandline": "%USERPROFILE%/AppData/Local/Programs/Git/bin/bash.exe -l -i", // "commandline": "%USERPROFILE%/scoop/apps/git/current/usr/bin/bash.exe -l -i", "icon": "%PROGRAMFILES%/Git/mingw64/share/git/git-for-windows.ico", // "icon": "%USERPROFILE%/AppData/Local/Programs/Git/mingw64/share/git/git-for-windows.ico", // "icon": "%USERPROFILE%/apps/git/current/usr/share/git/git-for-windows.ico", "name" : "Bash", "startingDirectory" : "%USERPROFILE%", },
You can also add other options like:
{ "guid": "{00000000-0000-0000-ba54-000000000002}", // ... "acrylicOpacity" : 0.75, "closeOnExit" : true, "colorScheme" : "Campbell", "cursorColor" : "#FFFFFF", "cursorShape" : "bar", "fontFace" : "Consolas", "fontSize" : 10, "historySize" : 9001, "padding" : "0, 0, 0, 0", "snapOnInput" : true, "useAcrylic" : true }
Notes
- make your own
guid
as of https://github.com/microsoft/terminal/pull/2475 this is no longer generated. - the
guid
can be used in in theglobals
>defaultProfile
so you can press you can press CtrlShiftT or start a Windows terminal and it will start up bash by default
"defaultProfile" : "{00000000-0000-0000-ba54-000000000001}",
-l -i
to make sure that.bash_profile
gets loaded- use environment variables so they can map to different systems correctly.
- target
git/bin/bash.exe
to avoid spawning off additional processes which saves about 10MB per process according to Process Explorer compared to using bin/bash or git-bash
I have my configuration that uses Scoop in https://gist.github.com/trajano/24f4edccd9a997fad8b4de29ea252cc8
There are below things to do.
- Make sure your
git
command can be run successfully in CMD
That means you need to add git
to path when install git or add it to system environment later.
- Update the config file
profile.json
Open Settings
, add following snippet inside the word profiles
:
{ "tabTitle": "Git Bash", "acrylicOpacity" : 0.75, "closeOnExit" : true, "colorScheme" : "Campbell", "commandline" : "C:/Program Files/Git/bin/bash.exe --login", "cursorColor" : "#FFFFFF", "cursorShape" : "bar", "fontFace" : "Consolas", "fontSize" : 12, "guid" : "{14ad203f-52cc-4110-90d6-d96e0f41b64d}", "historySize" : 9001, "icon": "ms-appdata:///roaming/git-bash_32px.ico", "name" : "Git Bash", "padding" : "0, 0, 0, 0", "snapOnInput" : true, "useAcrylic" : true }
The icon can be obtained here: git-bash_32px.ico
You can add icons for Tab to this location:
%LOCALAPPDATA%\packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\RoamingState
Put 32x32 PNG/icons in this folder, and then in profile.json
you can reference the image resource with the path starting with ms-appdata:// .
Note that, please make sure the Guid
is correct and it matches the corresponding correct configs.
- Test git bash works well in
Windows Terminal
The final result is below:
This is the complete answer (GitBash + color scheme + icon + context menu)
1) Set default profile:
"globals" : { "defaultProfile" : "{00000000-0000-0000-0000-000000000001}", ...
2) Add GitBash profile
"profiles" : [ { "guid": "{00000000-0000-0000-0000-000000000001}", "acrylicOpacity" : 0.75, "closeOnExit" : true, "colorScheme" : "GitBash", "commandline" : "\"%PROGRAMFILES%\\Git\\usr\\bin\\bash.exe\" --login -i -l", "cursorColor" : "#FFFFFF", "cursorShape" : "bar", "fontFace" : "Consolas", "fontSize" : 10, "historySize" : 9001, "icon" : "%PROGRAMFILES%\\Git\\mingw64\\share\\git\\git-for-windows.ico", "name" : "GitBash", "padding" : "0, 0, 0, 0", "snapOnInput" : true, "startingDirectory" : "%USERPROFILE%", "useAcrylic" : false },
3) Add GitBash color scheme
"schemes" : [ { "background" : "#000000", "black" : "#0C0C0C", "blue" : "#6060ff", "brightBlack" : "#767676", "brightBlue" : "#3B78FF", "brightCyan" : "#61D6D6", "brightGreen" : "#16C60C", "brightPurple" : "#B4009E", "brightRed" : "#E74856", "brightWhite" : "#F2F2F2", "brightYellow" : "#F9F1A5", "cyan" : "#3A96DD", "foreground" : "#bfbfbf", "green" : "#00a400", "name" : "GitBash", "purple" : "#bf00bf", "red" : "#bf0000", "white" : "#ffffff", "yellow" : "#bfbf00", "grey" : "#bfbfbf" },
4) To add a right-click context menu "Windows Terminal Here"
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\Background\shell\wt] @="Windows terminal here" "Icon"="C:\\Users\\{YOUR_WINDOWS_USERNAME}\\AppData\\Local\\Microsoft\\WindowsApps\\{YOUR_ICONS_FOLDER}\\icon.ico" [HKEY_CLASSES_ROOT\Directory\Background\shell\wt\command] @="\"C:\\Users\\{YOUR_WINDOWS_USERNAME}\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe\""
- replace {YOUR_WINDOWS_USERNAME}
- create icon folder, put the icon there and replace {YOUR_ICONS_FOLDER}
- save this in a whatever_filename.reg file and run it.
Comments
Post a Comment