A1.5 附录 A: 其它环境中的 Git - Zsh 中的 Git

Zsh 中的 Git

Git 还为 Zsh 提供了一个 Tab 补全库。复制 contrib/completion/git-completion.zsh 到你的 home 目录,然后在 .zshrc 中 source 即可。相对于 Bash,Zsh 的接口更加强大:

  1. $ git che<Tab>
  2. check-attr -- 显示 gitattributes 信息
  3. check-ref-format -- 检查引用名称是否符合规范
  4. checkout -- 从工作区中检出分支或路径
  5. checkout-index -- 从暂存区拷贝文件至工作目录
  6. cherry -- 查找没有被合并至上游的提交
  7. cherry-pick -- 从一些已存在的提交中应用更改

意义不明的 Tab 补全并不仅仅会被列出;它们还会有帮助性的描述,你可以通过不断敲击 Tab 以图形方式浏览补全列表。该功能可用于 Git 命令、它们的参数和在仓库中内容的名称(例如 refs 和 remotes),还有文件名和其他所有 Zsh 知道如何去补全的项目。

在提示符自定义方面,Zsh 很好地兼容了Bash,并允许你同时使用一个右侧提示符。把如下代码添加至你的 ~/.zshrc 文件中,就可以在右侧显示分支名称:

  1. setopt prompt_subst
  2. . ~/git-prompt.sh
  3. export RPROMPT=$'$(__git_ps1 "%s")'

当你的命令行位于一个 Git 仓库目录时,在任何时候,都可以在命令行窗口右侧显示当前分支。它看起来像这样:

自定义 `zsh` 提示符.

Figure 163. 自定义 zsh 提示符.

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

一个 oh-my-zsh 主题的示例.

Figure 164. 一个 oh-my-zsh 主题的示例.

prev | next

原文: https://git-scm.com/book/zh/v2/%E9%99%84%E5%BD%95-A%3A-%E5%85%B6%E5%AE%83%E7%8E%AF%E5%A2%83%E4%B8%AD%E7%9A%84-Git-Zsh-%E4%B8%AD%E7%9A%84-Git