通過(guò)這篇文章,可以了解到:
- 為什么要使用 Git-Bash,以及 Git-Bash 的優(yōu)點(diǎn)
- Git-Bash 的外觀主題配置
Git-Bash 的優(yōu)點(diǎn)
在開(kāi)發(fā)的過(guò)程中,我們可能需要使用大量的命令行工具,或者遠(yuǎn)程連接到服務(wù)器進(jìn)行操作。然而,由于 Window 自帶的 CMD 和 PowerShell 都不太好用,而且在 Window 下的命令又與 Linux 和 MacOS 的命令不太一樣,如果需要經(jīng)常跨平臺(tái)操作,學(xué)習(xí) Window 的命令行命令無(wú)疑是增加了學(xué)習(xí)成本,因此就有了需要一個(gè)能做到通用命令的工具。
在 Window 下使用類(lèi)似 Linux 命令的工具有很多,例如 WIndow10 上提供的 WSL(WIndow Sub Linux),CygWin 以及 Git-Bash。
WSL
The Windows Subsystem for Linux lets developers run Linux environments -- including most command-line tools, utilities, and applications -- directly on Windows, unmodified, without the overhead of a virtual machine.
WSL是微軟提供的一套可以運(yùn)行 Linux 環(huán)境而又不用加載虛擬機(jī)的子系統(tǒng)。使用WSL可以像使用 Ubuntu 一樣的操作,而且還能訪問(wèn) WIndow 上的文件系統(tǒng)。
CygWin
CygWin 是運(yùn)行在 Window 平臺(tái)的類(lèi) Unix 環(huán)境,CygWIn 通過(guò)將部分 Posix 條用轉(zhuǎn)換成 Window 的 API 調(diào)用,從而實(shí)現(xiàn)相關(guān)功能。
Git-Bash
我們這篇文章介紹的 Git-Bash,是 Git 官網(wǎng) 上提供的一個(gè) Git 開(kāi)發(fā)工具包里的一個(gè)命令行組件。
Git-Bash 源自 MinGW,是一個(gè)用于開(kāi)發(fā)原生 Window 應(yīng)用的開(kāi)發(fā)環(huán)境,提供了針對(duì) WIn32 應(yīng)用的 GCC、GNU binutils 等工具。
我們可以根據(jù)自己的需求,進(jìn)行選擇,這里我選擇 Git-Bash 的原因,是我的開(kāi)發(fā)需求主要為 Python 的開(kāi)發(fā),Window 系統(tǒng)上主要的應(yīng)用主要的 git 工具以及使用 SSH 連接服務(wù)器,因此選擇 Git-Bash 較為方便、簡(jiǎn)單。
Git-Bash 的主題配置
Git-Bash 原生的主題,其實(shí)也并不難看,更換 Git-Bash 的需求主要在于,我的 Ubuntu 服務(wù)器端配置了 oh-my-zsh。因此如果使用 Git-Bash 的默認(rèn)主題進(jìn)行 SSH 連接,會(huì)因?yàn)樽煮w問(wèn)題而無(wú)法正常顯示,還有就是 Git-Bash 原生的主題配色和 MacOS 下 iTerm Solarized 主題配色差距甚大。因此,一是視覺(jué)上不同一,看上去不習(xí)慣,而是本著手賤的探索精神,總希望做點(diǎn)特別的挑戰(zhàn),就有了去修改 Git-Bash 主題的需求。
修改 Git-Bash 主題主要有兩個(gè)困難,一是 Git-Bash 自帶的 Options 下 Text 設(shè)置有缺陷,只有有限的字體可選,一些系統(tǒng)上已經(jīng)安裝了的字體,這里并沒(méi)有得選擇。而要使用 Git-Bash SSH 連接使用了 agnoster 主題的 ZSH,需要一種含特殊字符的字體 Powerline,沒(méi)有了這種字體,就會(huì)出現(xiàn)亂碼。
Git-Bash 字體解決方案
首先,先從 GitHub 下載相應(yīng)的 Powerline 字體,并且安裝好字體。
然后,安裝好字體。
然后找到 Git-Bash 的配置文件 .minttyrc ,這個(gè)配置文件一般位于 C:\Users\<YourUserName>之下。然后修改配置文件內(nèi)容如下:
Font=Meslo LG M for Powerline # 這里我選的事 Meslo LG M 這個(gè)字體,可以根據(jù)自己的喜好選擇自己喜歡的 Powerline 字體
FontHeight=12
隨后重啟 Git-Bash 即可以運(yùn)用新的字體。
Git-Bash 配色主題設(shè)置
在 MacOS 上的 iTerm 可以用 SOLARIZED 的配置文件來(lái)設(shè)置,但是官網(wǎng)并沒(méi)有提供 MinGW 的配置。
后來(lái),我在 GitHub 上找到 MinGW 的 SOLARIZED 配置,[mintty-colors-solarized]
配置方法很簡(jiǎn)單,同樣的打開(kāi) .minttyrc 配置文件,然后把以下內(nèi)容添加到配置文件里面
ForegroundColour=131,148,150
BackgroundColour=0,43,54
CursorColour=220,50,47
Black=7,54,66
BoldBlack=0,43,54
Red=220,50,47
BoldRed=203,75,22
Green=133,153,0
BoldGreen=88,110,117
Yellow=181,137,0
BoldYellow=101,123,131
Blue=38,139,210
BoldBlue=131,148,150
Magenta=211,54,130
BoldMagenta=108,113,196
Cyan=42,161,152
BoldCyan=147,161,161
White=238,232,213
BoldWhite=253,246,227
然后重啟 Git-Bash,即可看到新的主題配色,以下是我的 Git-Bash 外觀主題配置樣例。

參考資料
Git官網(wǎng)
知乎 - Cygwin 和 MinGW 的區(qū)別
Git-Bash 配置文件 mintty-colors-solarized
solarized
Powerline fonts