Home Archives Categories Tags Docs

Mac Ohmyz 使用介绍

发布时间: 更新时间: 总字数:1126 阅读时间:3m 作者: 分享

Oh My Zsh 是基于 zsh 命令行的一个扩展工具集,提供了丰富的扩展功能,本文主要介绍如何使用 Ohmyz

安装

Linux

$ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
or
sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

Mac

brew install zsh

更新

cd ~/.oh-my-zsh
git stash
upgrade_oh_my_zsh
git stash pop

配置

ohmyz 的配置文件在 ~/.zshrc 文件中。

Theme

~/.zshrc 中,默认主题是 robbyrussell

# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="robbyrussell"

Oh My Zsh 默认自带了一些默认主题,存放在 ~/.oh-my-zsh/themes 目录中。

插件

Oh My Zsh 提供的所有插件,都可以在它的插件主页中找到:

https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins

git

配置 ~/.zshrc

plugins=(... git)
Alias Command
g git
ga git add
gaa git add –all
gapa git add –patch
gau git add –update
gav git add –verbose
gap git apply
gb git branch
gba git branch -a
gbd git branch -d
gbda git branch –no-color –merged | command grep -vE «^(*|\s(master|develop|dev)\s$)» | command xargs -n 1 git branch -d
gbD git branch -D
gbl git blame -b -w
gbnm git branch –no-merged
gbr git branch –remote
gbs git bisect
gbsb git bisect bad
gbsg git bisect good
gbsr git bisect reset
gbss git bisect start
gc git commit -v
gc! git commit -v –amend
gcn! git commit -v –no-edit –amend
gca git commit -v -a
gca! git commit -v -a –amend
gcan! git commit -v -a –no-edit –amend
gcans! git commit -v -a -s –no-edit –amend
gcam git commit -a -m
gcsm git commit -s -m
gcb git checkout -b
gcf git config –list
gcl git clone –recurse-submodules
gclean git clean -id
gpristine git reset –hard && git clean -dfx
gcm git checkout master
gcd git checkout develop
gcmsg git commit -m
gco git checkout
gcount git shortlog -sn
gcp git cherry-pick
gcpa git cherry-pick –abort
gcpc git cherry-pick –continue
gcs git commit -S
gd git diff
gdca git diff –cached
gdcw git diff –cached –word-diff
gdct git describe –tags $(git rev-list –tags –max-count=1)
gds git diff –staged
gdt git diff-tree –no-commit-id –name-only -r
gdv git diff -w $@ | view -
gdw git diff –word-diff
gf git fetch
gfa git fetch –all –prune
gfg git ls-files | grep
gfo git fetch origin
gg git gui citool
gga git gui citool –amend
ggf git push –force origin $(current_branch)
ggfl git push –force-with-lease origin $(current_branch)
ggl git pull origin $(current_branch)
ggp git push origin $(current_branch)
ggpnp ggl && ggp
ggpull git pull origin «$(git_current_branch)»
ggpur ggu
ggpush git push origin «$(git_current_branch)»
ggsup git branch –set-upstream-to=origin/$(git_current_branch)
ggu git pull –rebase origin $(current_branch)
gpsup git push –set-upstream origin $(git_current_branch)
ghh git help
gignore git update-index –assume-unchanged
gignored git ls-files -v | grep «1«
git-svn-dcommit-push git svn dcommit && git push github master:svntrunk
gk gitk –all –branches
gke gitk –all $(git log -g –pretty=%h)
gl git pull
glg git log –stat
glgp git log –stat -p
glgg git log –graph
glgga git log –graph –decorate –all
glgm git log –graph –max-count=10
glo git log –oneline –decorate
glol git log –graph –pretty=‘%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’
glols git log –graph –pretty=‘%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –stat
glod git log –graph –pretty=‘%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset’
glods git log –graph –pretty=‘%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset’ –date=short
glola git log –graph –pretty=‘%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –all
glog git log –oneline –decorate –graph
gloga git log –oneline –decorate –graph –all
glp _git_log_prettily
gm git merge
gmom git merge origin/master
gmt git mergetool –no-prompt
gmtvim git mergetool –no-prompt –tool=vimdiff
gmum git merge upstream/master
gma git merge –abort
gp git push
gpd git push –dry-run
gpf git push –force-with-lease
gpf! git push –force
gpoat git push origin –all && git push origin –tags
gpu git push upstream
gpv git push -v
gr git remote
gra git remote add
grb git rebase
grba git rebase –abort
grbc git rebase –continue
grbd git rebase develop
grbi git rebase -i
grbm git rebase master
grbs git rebase –skip
grh git reset
grhh git reset –hard
groh git reset origin/$(git_current_branch) –hard
grm git rm
grmc git rm –cached
grmv git remote rename
grrm git remote remove
grset git remote set-url
grt cd «$(git rev-parse –show-toplevel || echo .)»
gru git reset –
grup git remote update
grv git remote -v
gsb git status -sb
gsd git svn dcommit
gsh git show
gsi git submodule init
gsps git show –pretty=short –show-signature
gsr git svn rebase
gss git status -s
gst git status
gsta git stash push
gsta git stash save
gstaa git stash apply
gstc git stash clear
gstd git stash drop
gstl git stash list
gstp git stash pop
gsts git stash show –text
gstall git stash –all
gsu git submodule update
gts git tag -s
gtv git tag | sort -V
gtl gtl(){ git tag –sort=-v:refname -n -l ${1}* }; noglob gtl
gunignore git update-index –no-assume-unchanged
gunwip git log -n 1 | grep -q -c «--wip--» && git reset HEAD~1
gup git pull –rebase
gupv git pull –rebase -v
gupa git pull –rebase –autostash
gupav git pull –rebase –autostash -v
glum git pull upstream master
gwch git whatchanged -p –abbrev-commit –pretty=medium
gwip git add -A; git rm $(git ls-files –deleted) 2> /dev/null; git commit –no-verify –no-gpg-sign -m «–wip– [skip ci]»

配置 ~/.zshrc

plugins=(... web-search)

使用:

  • google ohmyz # 打开 google 搜索 ohmyz
  • baidu ohmyz # 打开 baidu 搜索 ohmyz
  • bing ohmyz # 打开 bing 搜索 ohmyz

wd

wd 的作用就是能够快速的切换到常用的目录,使用方法:

  • 进入目标目录:如 cd /etc/nginx/conf.d
  • 设置快捷键:如 wd add nc,其中 nc 是标识名
  • 快速切换目录:如 wd nc后,将会自动切换到 /etc/nginx/conf.d 目录中
  • 删除快捷键:如 wd rm nc,删除后快捷键将失效

  1. [:lower:] [return]

参考