通过这篇文章,可以了解到:

  • 为什么要使用 Git-Bash,以及 Git-Bash 的优点
  • Git-Bash 的外观主题配置

Git-Bash 的优点

在开发的过程中,我们可能需要使用大量的命令行工具,或者远程连接到服务器进行操作。然而,由于 Window 自带的 CMD 和 PowerShell 都不太好用,而且在 Window 下的命令又与 Linux 和 MacOS 的命令不太一样,如果需要经常跨平台操作,学习 Window 的命令行命令无疑是增加了学习成本,因此就有了需要一个能做到通用命令的工具。
在 Window 下使用类似 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是微软提供的一套可以运行 Linux 环境而又不用加载虚拟机的子系统。使用WSL可以像使用 Ubuntu 一样的操作,而且还能访问 WIndow 上的文件系统。

CygWin

CygWin 是运行在 Window 平台的类 Unix 环境,CygWIn 通过将部分 Posix 条用转换成 Window 的 API 调用,从而实现相关功能。

Git-Bash

我们这篇文章介绍的 Git-Bash,是 Git 官网 上提供的一个 Git 开发工具包里的一个命令行组件。
Git-Bash 源自 MinGW,是一个用于开发原生 Window 应用的开发环境,提供了针对 WIn32 应用的 GCC、GNU binutils 等工具。

我们可以根据自己的需求,进行选择,这里我选择 Git-Bash 的原因,是我的开发需求主要为 Python 的开发,Window 系统上主要的应用主要的 git 工具以及使用 SSH 连接服务器,因此选择 Git-Bash 较为方便、简单。

Git-Bash 的主题配置

Git-Bash 原生的主题,其实也并不难看,更换 Git-Bash 的需求主要在于,我的 Ubuntu 服务器端配置了 oh-my-zsh。因此如果使用 Git-Bash 的默认主题进行 SSH 连接,会因为字体问题而无法正常显示,还有就是 Git-Bash 原生的主题配色和 MacOS 下 iTerm Solarized 主题配色差距甚大。因此,一是视觉上不同一,看上去不习惯,而是本着手贱的探索精神,总希望做点特别的挑战,就有了去修改 Git-Bash 主题的需求。
修改 Git-Bash 主题主要有两个困难,一是 Git-Bash 自带的 Options 下 Text 设置有缺陷,只有有限的字体可选,一些系统上已经安装了的字体,这里并没有得选择。而要使用 Git-Bash SSH 连接使用了 agnoster 主题的 ZSH,需要一种含特殊字符的字体 Powerline,没有了这种字体,就会出现乱码。

Git-Bash 字体解决方案

首先,先从 GitHub 下载相应的 Powerline 字体,并且安装好字体。
然后,安装好字体。
然后找到 Git-Bash 的配置文件 .minttyrc ,这个配置文件一般位于 C:\Users\<YourUserName>之下。然后修改配置文件内容如下:

Font=Meslo LG M for Powerline # 这里我选的事 Meslo LG M 这个字体,可以根据自己的喜好选择自己喜欢的 Powerline 字体
FontHeight=12

随后重启 Git-Bash 即可以运用新的字体。

Git-Bash 配色主题设置

在 MacOS 上的 iTerm 可以用 SOLARIZED 的配置文件来设置,但是官网并没有提供 MinGW 的配置。
后来,我在 GitHub 上找到 MinGW 的 SOLARIZED 配置,[mintty-colors-solarized]
配置方法很简单,同样的打开 .minttyrc 配置文件,然后把以下内容添加到配置文件里面

ForegroundColour=131,148,150
BackgroundColour=0,43,54
CursorColour=220,50,47Black=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官网
知乎 - Cygwin 和 MinGW 的区别
Git-Bash 配置文件 mintty-colors-solarized
solarized
Powerline fonts


本文为原创内容,由同一作者于早前发表于简书,Window平台Git-Bash的主题配置

Window平台Git-Bash的主题配置相关推荐

  1. 修改Windows的git bash的主题(样式)

    背景 Windows的git bash页面默认是黑白的,如何改成别的颜色? PS: 我一直不太喜欢黑色主题的软件,有几个原因 大多软件是白色的,看久了黑色切换到其他软件的时候眼睛不适应 字体等对比不强 ...

  2. Git Bash中npm配置,加速下载等作用

    每输入一行,回车,没有任何提示,说明操作成功 1. npm config set registry https://registry.npm.taobao.org 2.npm config set l ...

  3. Git常用命令与Git for windows solarized主题配置

    近来学习了git的相关应用,由于不是很上心,拖拖拉拉地学了将近半个月的时间,在差不多学成后,回头来总结一下这段时间的学习. git安装 创建版本库 工作区与暂存区 远程仓库 分支管理 常用命令 其他 ...

  4. git Bash代码密匙公匙配置

    一.下载并安装Git 二.打开git bash 右键选择Git Bash Here 三.配置密钥 在Git Bash界面输入git命令 初始化自己的用户名和邮箱 命令:git config --glo ...

  5. Git bash 编码格式配置_02

    文章目录 1. 中文配置 2. 基础编码 3. 配置环境变量 1. 中文配置 2. 基础编码 在git bash命令窗口总依次执行 git config --global i18n.commitenc ...

  6. linux git ssh 配置文件,git bash配置ssh 登录 Linux的方法

    1.首先在 Linux 服务器上生成公钥和私钥文件,默认的存放目录在~/.ssh下. ssh-keygen 可以将密码留空,这样之后就可以免密码登录. 2.将私钥文件拷贝到本机. scp root@1 ...

  7. git bash的安装和配置教程

    分布式 : Git版本控制系统是一个分布式的系统, 是用来保存工程源代码历史状态的命令行工具; 保存点 : git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目额状态; 可以在该 ...

  8. git bash 下 pacman 环境配置

    如果不是为了跟着经历一遍(折腾自己),直接跳到最后使用 msys2 的最优的方法. git bash 下 pacman 环境配置 安装 pacman 下载 pacman,解压到 git 的安装目录(D ...

  9. 配置 Git Bash 的透明度和颜色等

    简介: 官网下载git工具,随后配置git bash的颜色和透明度, 颜色等 文章目录 本博文的简述or解决问题? 重要提示: 教程步骤: 本博文的简述or解决问题? ​ 详情: 见简介 编程环境: ...

  10. 【Git Bash】在window 下,设置打开gitbash快捷键、修改默认路径

    文章目录 找:快捷方式路径 改:右键 "Git Bash",打开 "属性" 找:快捷方式路径 C:\ProgramData\Microsoft\Windows\ ...

最新文章

  1. 腾讯员工:越来越多的新生都想要学计算机专业,好日子长不了
  2. 大学python用什么教材-Python大学教程(普通高等教育十三五规划教材)
  3. NEU 1497 Kid and Ants 思路 难度:0
  4. Python高级——魔法属性和方法
  5. 入门机器学习(十七)--编程作业-K-means和PCA(Python实现)
  6. c语言char aa 1000,char ** 与char * a[ ] 区别
  7. 【android原生态RPG游戏框架源码】
  8. 翻译:控制容器的反转IoC和依赖注入模式DIP 概念发源地 Martin Fowler
  9. 量化投资理论文献综述
  10. Alios-Things之wifi模块二次开发-(1)搭建Alios-Things开发环境(基于ubuntu 16.0.4)
  11. Android关于微博发表微博时@好友后删除@的好友的功能实现
  12. 格物、致知、正心、诚意、修身、齐家、治国、平天下
  13. lxqt lxde_面向极简主义者的Linux桌面:LXQt和LXDE入门
  14. SAP 启动物料帐后不可更改物料价格的处理方法
  15. 计算机相关专业学生必读书单
  16. 超算平台安装Anaconda和Tensorflow
  17. python的图形用户界面
  18. 【服务器数据恢复】VMFS文件系统RAID5硬盘故障的数据恢复案例
  19. Uber 团队放弃微服务改用宏服务,网友评论炸锅了
  20. MarkDown语法快捷键

热门文章

  1. 【2020.09.05】基金基础问题答疑汇总
  2. 事件循环、webpack、vue<前端学习笔记>
  3. Android Studio Offline work mode
  4. 002java面试笔记——【java基础篇】从团800失败面试总结的java面试题
  5. WIN10的桌面和虚拟桌面的切换快捷键太方便了
  6. 用计算机算出女儿身高,孩子身高预测计算器准吗
  7. vcard微信电子名片
  8. sql统计各部门的的男女员工数
  9. 视频与编解码的技术邂逅,碰撞出的高清罗曼史
  10. unreal world 皮革_不真实的世界Unreal World新手速刷攻略是什么?