现在Mac系统已经默认使用zsh作为Shell,但是默认没有开启插件,本文记录一下在使用Git命令行的自动补全功能时,配置zsh的一些记录。

Git官网关于使用 zsh的文档:A1.8 附录 A: 在其它环境中使用 Git - Zsh 中的 Git

Zsh 本身已足够强大,但还有一些专门为它打造的完整框架,使它更加完善。 其中之一名为 "oh-my-zsh",你可以在 https://github.com/robbyrussell/oh-my-zsh 找到它。 oh-my-zsh 的扩展系统包含强大的 Git Tab 补全功能,且许多提示符 "主题" 可以展示版本控制数据。

Oh My Zsh

安装

由于macOS Big Sur默认已经使用了zsh,所以这时候只需要安装有git,wget或者curl (用来安装onmyzsh) 。

使用以下方式之一安装:

| Method | Command |
| :- | :- |
| curl | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
| wget | sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
| fetch | sh -c "$(fetch -o - https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |

使用

打开配置文件

vi ~/.zshrc

然后,在plugins模块启用需要的插件,内置支持的插件列表可以查看:https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins

也可以在配置文件中更换主题,我使用给的是默认主题

插件

我安装了一个非内置的autojump插件,然后对于经常访问的路径,直接使用j / jo+ 部分文件夹名称就可以跳转或者打开

brew install autojump
ZSH_THEME="robbyrussell"

plugins=(
    git
    autojump
    adb
    golang
    flutter
    docker
    docker-compose
)

关于一些提示自动补全功能,在输入部分信息后,按TAB键,会给出相应的提示。如git tag V3.1后,按TAB:

➜  ~ j CPC
/Users/admin/AndroidStudioProjects/CPC_SDK
➜  CPC_SDK git:(feature/cyc/misu_specialcashtask) git tag  
➜  CPC_SDK git:(feature/cyc/misu_specialcashtask) git tag V3.1
V3.132        v3.102        v3.110        v3.112-spe01  v3.120-b2     v3.130-b1     v3.140        v3.141-spe01  v3.150-b2     v3.161  
v3.100        v3.102-b1     v3.110-b1     v3.113        v3.121        v3.130-b2     v3.140-b1     v3.141-spe1   v3.160  
v3.100-b1     v3.103        v3.111        v3.120        v3.121-b1     v3.131        v3.141        v3.150        v3.160-b1   
v3.101        v3.103-b1     v3.112        v3.120-b1     v3.130        v3.131-b1     v3.141-b1     v3.150-b1     v3.160-b2  

adb插件

zsh配置adb环境变量:

echo 'export ANDROID_HOME=/Users/$USER/Library/Android/sdk' >> ~/.zshrc
echo 'export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools' >> ~/.zshrc

然后更新配置:

source ~/.zshrc

然后在plugins中启用adb,然后就可以使用TAB补全命令。

如果觉得我的文章对你有用,请随意赞赏