Alex Garbiak
← Lib

Git Bash for Windows Setup

Updated git-bashwindowsterminalsetupcheatsheet

A general-purpose baseline for now — the plan is to trim this down to the settings I actually use, and drop the rest.

Git Bash’s terminal window is mintty, not cmd.exe or Windows Terminal — it’s configured through its own settings file rather than Windows’ terminal settings.

Where config lives

Mintty reads ~/.minttyrc (i.e. C:\Users\<you>\.minttyrc) on startup. It doesn’t exist by default — create it, or set the same options via right-click the title bar → Options…, which writes back to the same file.

Changes take effect the next time you open a Git Bash window (existing windows don’t reload live).

Windows-style copy & paste

By default, mintty copies on text selection and pastes on right-click or middle-click — not Ctrl+C / Ctrl+V, since those already mean SIGINT and paste-literal in a shell. To get the familiar Windows shortcuts, use Ctrl+Shift+C / Ctrl+Shift+V:

SettingDescription
CtrlShiftShortcuts=yesEnables Ctrl+Shift+C (copy) and Ctrl+Shift+V (paste), plus other Ctrl+Shift+<key> shortcuts (e.g. N for new window, T for new tab).
CopyOnSelect=noStops every text selection from silently overwriting the clipboard.
RightClickAction=pasteKeeps right-click-to-paste as a fallback (this is the default).

Font & size

SettingDescription
Font=Cascadia CodeTerminal font — any monospace font installed on Windows works.
FontHeight=12Point size; bump to 14–16 for a more readable, editor-like size on a high-DPI display.
FontWeight=400Regular weight (600/700 for semi-bold/bold).
FontSmoothing=fullClearType/antialiasing for crisper glyphs.

Color scheme

Mintty ships with a plain black-on-white/grey theme by default. Setting colors explicitly gets closer to a modern dark editor theme. This is a Dracula-inspired palette:

ForegroundColour=248,248,242
BackgroundColour=40,42,54
CursorColour=248,248,242
Black=40,42,54
BoldBlack=98,114,164
Red=255,85,85
BoldRed=255,110,110
Green=80,250,123
BoldGreen=105,255,150
Yellow=241,250,140
BoldYellow=255,255,165
Blue=98,114,164
BoldBlue=123,140,190
Magenta=255,121,198
BoldMagenta=255,146,225
Cyan=139,233,253
BoldCyan=164,255,255
White=248,248,242
BoldWhite=255,255,255

Cursor & scrollback

SettingDescription
CursorType=blockCursor shape — block, underscore, or beam.
CursorBlinks=yesBlinking cursor on/off.
Transparency=offWindow transparency — low/medium/high for a translucent background.
ScrollbackLines=10000How many lines of scrollback history are kept.
Scrollbar=rightScrollbar position — left, right, or none.

Full example .minttyrc

Combining the above into one file:

Font=Cascadia Code
FontHeight=13
FontWeight=400
FontSmoothing=full
CursorType=block
CursorBlinks=yes
Transparency=off
ScrollbackLines=10000
Scrollbar=right
CtrlShiftShortcuts=yes
CopyOnSelect=no
RightClickAction=paste
ForegroundColour=248,248,242
BackgroundColour=40,42,54
CursorColour=248,248,242
Black=40,42,54
BoldBlack=98,114,164
Red=255,85,85
BoldRed=255,110,110
Green=80,250,123
BoldGreen=105,255,150
Yellow=241,250,140
BoldYellow=255,255,165
Blue=98,114,164
BoldBlue=123,140,190
Magenta=255,121,198
BoldMagenta=255,146,225
Cyan=139,233,253
BoldCyan=164,255,255
White=248,248,242
BoldWhite=255,255,255

Alternative: run Git Bash inside Windows Terminal

Windows Terminal gives you tabs, panes, and a settings.json-driven theme/font system on top of whatever shell it hosts — including Git Bash’s bash.exe, so it’s an alternative to configuring mintty directly.

  1. Windows Terminal usually auto-detects Git Bash and adds a profile once Git for Windows is installed.
  2. If not, add a profile pointing commandline at "C:\\Program Files\\Git\\bin\\bash.exe" -li (-li starts an interactive login shell, matching the normal Git Bash launcher).
  3. Font, size, and color scheme are then set per-profile in Windows Terminal’s settings UI (or settings.json) instead of .minttyrc — the mintty-specific settings above no longer apply.