最近切换到mac上开发,自然就用上了oh-my-zsh。本来在windows上使用git时,我有自定义的一套缩写。既然ohmyzsh提供很多强大的缩写,那么我也没必要自己再搞一套。

本来我还纠结买x1carbon好,还是买macbook pro好?最终买了macbook, 想看使用体会的。可以看文章最后。

1 常用的配置

alias ga='git add'

alias gb='git branch'

alias gba='git branch -a'

alias gbd='git branch -d'

alias gcam='git commit -a -m'

alias gcb='git checkout -b'

alias gco='git checkout'

alias gcp='git cherry-pick'

alias gd='git diff'

alias gfo='git fetch origin'

alias ggpush='git push origin $(git_current_branch)'

alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'

alias glgp='git log --stat -p'

alias gm='git merge'

alias gp='git push'

alias gst='git status'

alias gsta='git stash save'

alias gstp='git stash pop'

2 所有的配置

alias g='git'

alias ga='git add'

alias gaa='git add --all'

alias gapa='git add --patch'

alias gau='git add --update'

alias gb='git branch'

alias gba='git branch -a'

alias gbd='git branch -d'

alias gbda='git branch --no-color --merged | command grep -vE "^(\*|\s*(master|develop|dev)\s*$)" | command xargs -n 1 git branch -d'

alias gbl='git blame -b -w'

alias gbnm='git branch --no-merged'

alias gbr='git branch --remote'

alias gbs='git bisect'

alias gbsb='git bisect bad'

alias gbsg='git bisect good'

alias gbsr='git bisect reset'

alias gbss='git bisect start'

alias gc='git commit -v'

alias gc!='git commit -v --amend'

alias gcn!='git commit -v --no-edit --amend'

alias gca='git commit -v -a'

alias gca!='git commit -v -a --amend'

alias gcan!='git commit -v -a --no-edit --amend'

alias gcans!='git commit -v -a -s --no-edit --amend'

alias gcam='git commit -a -m'

alias gcsm='git commit -s -m'

alias gcb='git checkout -b'

alias gcf='git config --list'

alias gcl='git clone --recursive'

alias gclean='git clean -fd'

alias gpristine='git reset --hard && git clean -dfx'

alias gcm='git checkout master'

alias gcd='git checkout develop'

alias gcmsg='git commit -m'

alias gco='git checkout'

alias gcount='git shortlog -sn'

compdef _git gcount

alias gcp='git cherry-pick'

alias gcpa='git cherry-pick --abort'

alias gcpc='git cherry-pick --continue'

alias gcs='git commit -S'

alias gd='git diff'

alias gdca='git diff --cached'

alias gdct='git describe --tags `git rev-list --tags --max-count=1`'

alias gdt='git diff-tree --no-commit-id --name-only -r'

alias gdw='git diff --word-diff'

gdv() { git diff -w "$@" | view - }

compdef _git gdv=git-diff

alias gf='git fetch'

alias gfa='git fetch --all --prune'

alias gfo='git fetch origin'

function gfg() { git ls-files | grep $@ }

compdef _grep gfg

alias gg='git gui citool'

alias gga='git gui citool --amend'

ggf() {

[[ "$#" != 1 ]] && local b="$(git_current_branch)"

git push --force origin "${b:=$1}"

}

compdef _git ggf=git-checkout

ggl() {

if [[ "$#" != 0 ]] && [[ "$#" != 1 ]]; then

git pull origin "${*}"

else

[[ "$#" == 0 ]] && local b="$(git_current_branch)"

git pull origin "${b:=$1}"

fi

}

compdef _git ggl=git-checkout

ggp() {

if [[ "$#" != 0 ]] && [[ "$#" != 1 ]]; then

git push origin "${*}"

else

[[ "$#" == 0 ]] && local b="$(git_current_branch)"

git push origin "${b:=$1}"

fi

}

compdef _git ggp=git-checkout

ggpnp() {

if [[ "$#" == 0 ]]; then

ggl && ggp

else

ggl "${*}" && ggp "${*}"

fi

}

compdef _git ggpnp=git-checkout

ggu() {

[[ "$#" != 1 ]] && local b="$(git_current_branch)"

git pull --rebase origin "${b:=$1}"

}

compdef _git ggu=git-checkout

alias ggpur='ggu'

compdef _git ggpur=git-checkout

alias ggpull='git pull origin $(git_current_branch)'

compdef _git ggpull=git-checkout

alias ggpush='git push origin $(git_current_branch)'

compdef _git ggpush=git-checkout

alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'

alias gpsup='git push --set-upstream origin $(git_current_branch)'

alias ghh='git help'

alias gignore='git update-index --assume-unchanged'

alias gignored='git ls-files -v | grep "^[[:lower:]]"'

alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'

compdef _git git-svn-dcommit-push=git

alias gk='\gitk --all --branches'

compdef _git gk='gitk'

alias gke='\gitk --all $(git log -g --pretty=%h)'

compdef _git gke='gitk'

alias gl='git pull'

alias glg='git log --stat'

alias glgp='git log --stat -p'

alias glgg='git log --graph'

alias glgga='git log --graph --decorate --all'

alias glgm='git log --graph --max-count=10'

alias glo='git log --oneline --decorate'

alias glol="git log --graph --pretty='%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%Creset' --abbrev-commit"

alias glola="git log --graph --pretty='%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%Creset' --abbrev-commit --all"

alias glog='git log --oneline --decorate --graph'

alias gloga='git log --oneline --decorate --graph --all'

alias glp="_git_log_prettily"

compdef _git glp=git-log

alias gm='git merge'

alias gmom='git merge origin/master'

alias gmt='git mergetool --no-prompt'

alias gmtvim='git mergetool --no-prompt --tool=vimdiff'

alias gmum='git merge upstream/master'

alias gp='git push'

alias gpd='git push --dry-run'

alias gpoat='git push origin --all && git push origin --tags'

compdef _git gpoat=git-push

alias gpu='git push upstream'

alias gpv='git push -v'

alias gr='git remote'

alias gra='git remote add'

alias grb='git rebase'

alias grba='git rebase --abort'

alias grbc='git rebase --continue'

alias grbi='git rebase -i'

alias grbm='git rebase master'

alias grbs='git rebase --skip'

alias grh='git reset HEAD'

alias grhh='git reset HEAD --hard'

alias grmv='git remote rename'

alias grrm='git remote remove'

alias grset='git remote set-url'

alias grt='cd $(git rev-parse --show-toplevel || echo ".")'

alias gru='git reset --'

alias grup='git remote update'

alias grv='git remote -v'

alias gsb='git status -sb'

alias gsd='git svn dcommit'

alias gsi='git submodule init'

alias gsps='git show --pretty=short --show-signature'

alias gsr='git svn rebase'

alias gss='git status -s'

alias gst='git status'

alias gsta='git stash save'

alias gstaa='git stash apply'

alias gstc='git stash clear'

alias gstd='git stash drop'

alias gstl='git stash list'

alias gstp='git stash pop'

alias gsts='git stash show --text'

alias gsu='git submodule update'

alias gts='git tag -s'

alias gtv='git tag | sort -V'

alias gunignore='git update-index --no-assume-unchanged'

alias gunwip='git log -n 1 | grep -q -c "\-\-wip\-\-" && git reset HEAD~1'

alias gup='git pull --rebase'

alias gupv='git pull --rebase -v'

alias glum='git pull upstream master'

alias gwch='git whatchanged -p --abbrev-commit --pretty=medium'

alias gwip='git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify -m "--wip-- [skip ci]"'

3 最后

macbook是让我又舒服又难受的产品。对比我十几年的windows使用体会,谈谈使用三天macbook的感受。

舒服的理由如下:

视网膜屏幕写代码真的很舒服

oh-my-zsh,alfred等mac上的神器用起来真舒服

触摸板真的用起来很舒服,基本上不用鼠标

偶尔想起一件事情,打开电脑就能用,很舒服

背在包里感觉不到重量,很舒服

QQ不会弹出烦人的广告,很舒服

软件的界面颜值都很高,字体舒服

难受的理由如下:

接口真少的可怜,只有两个雷电接口,一个耳机借口。插个usb还要买转接线,转接线都不便宜。

各种window软件使用不舒服,要在虚拟机里面搞,难受

不知道为什么,mac版的谷歌浏览器最近崩溃频率有点高,难受

结论:如果你无法接受我最坏的一面,你也不配拥有我最好的一面。——玛丽莲·梦露

ohmyzsh用在mysql_oh-my-zsh git 命令缩写 以及macbook使用感受相关推荐

  1. 好用的git命令缩写

    以下命令可以简化常用的git命令,比如可以使用 git co 代替 git checkout git config --global alias.co checkout git config --gl ...

  2. ubuntu使用zsh进行命令行自动补全

    文章目录 ubuntu使用zsh进行命令行自动补全 1.zsh下载及配置 安装zsh 安装ohmyzsh 安装必要的插件 修改zshrc 使能代码提示 2.安装terminator终端 3.进入zsh ...

  3. Mac 配置oh-my-zsh美化Terminal(可用zsh下载链接)

    Mac 配置oh-my-zsh美化Terminal 下载oh my zsh (官网给的链接会显示连接错误) sh -c "$(curl -fsSL https://gitee.com/mir ...

  4. Error: No such keg: /usr/local/Cellar/node安装nvmbrew安装Oh my zsh. git安装git设置别名No bundle URL prese

    新电脑配置环境时的问题: Node找不到,但重装时又提示有node: 或者node报错Error: No such keg: /usr/local/Cellar/node brew cleanup b ...

  5. 颠覆Git 命令使用体验的神器 - tig

    颠覆 Git 命令使用体验的神器 -- tig tig, 就是把 Git 这个单词倒过来念, 它是一个命令行工具, 日常使用中我用它来取代 Git 最高频的几个操作, 如 git log, git d ...

  6. linux tig不支持中文,颠覆 Git 命令使用体验的神器 -- tig

    tig, 就是把 Git 这个单词倒过来念, 它是一个命令行工具, 日常使用中我用它来取代 Git 最高频的几个操作, 如 git log, git diff 以及 git blame等, 使用常见安 ...

  7. linux zsh ping命令,扣丁学堂Linux培训简述Linux使用zsh提高效率的5条建议

    本篇文章扣丁学堂Linux培训小编给大家分享一下Linux使用zsh提高效率的5条建议,对Linux开发技术感兴趣或者还是想要加入到Linux开发领域的小伙伴可以随小编一起来了解一下哦. Linux培 ...

  8. 安装auto-fu.zsh让命令输入自动补全

    下载auto-fu.zsh 1 2 cd ~/.oh-my-zsh/custom/plugins git clone https://github.com/hchbaw/auto-fu.zsh.git ...

  9. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

最新文章

  1. android 手写字体识别,一种基于Android系统的手写数学公式识别及生成MathML的方法...
  2. c语言中指针的类型,学习C语言中的指针类型
  3. DLL中导出函数的声明有两种方式
  4. JSON-RPC、XML-RPC、SOAP三者的关系
  5. sql 查出一张表中重复的所有记录数据
  6. auto与迭代器的用法_C++ STL move_iterator移动迭代器用法详解
  7. 熊逸《唐诗50讲》田园篇 - 学习笔记与感想
  8. python+ BeautifulSoup抓取“全国行政区划信息查询平台”的省市区信息
  9. 计算机计算能力共享,如何共享计算机的计算能力?
  10. larval 操作mysql数据库_laravel的数据库操作(三种)
  11. Java基础知识总结二(2)
  12. linux 中文 bterm fbterm 内核,Fbterm (简体中文)
  13. 搭建git服务器 web项目,git服务器搭建web项目
  14. Vue运行项目常用命令
  15. 小米红米手机root刷机教程
  16. Word for mac 去除全文空格
  17. 【科研导向】Neural Collaborative Filtering 神经协同过滤 <论文理解代码分析>
  18. 计算机专业可以考哪些资格证书,计算机专业的人可以考哪些职业资格证书?
  19. AR行业报告:甩掉VR,5年内AR将迎来大爆发 | 报告
  20. 使用BERT fine-tuning 用于推特情感分析

热门文章

  1. 电脑ssl协议 linux,基于ssl协议和openssl工具建立私有CA
  2. 自己做网站要买服务器,自己做网站要买服务器
  3. 计算机科学与技术考研报名属于哪一类,计算机考研属于13大门类的哪一类
  4. Quartus无法选择器件库
  5. 50种编程语言打印hello world
  6. 目前Java开发人员需求大吗 Java就业方向是什么
  7. 一位励志的盲人程序员加我微信,求助找工作
  8. 硬件使用74hc138的C语言程序,单片机74HC138三八译码器的原理及应用方法
  9. Maven依赖编译失败报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
  10. Jquery实现淘宝服饰精品案例