Tumx + Git + OhMyZsh + VIM

Ubuntu下的环境:

要求:

  • tmux >= 2.1
  • vim >= 7.3
  • zsh (oh-my-zsh)
  • git

部署环境:

TMUX(使用 gpakosz 的配置):

  • 部署方式:
1
2
3
4
5
$ cd ~
$ git clone https://github.com/gpakosz/.tmux.git
$ ln -s -f .tmux/.tmux.conf
$ cp .tmux/.tmux.conf.local .
$ sudo apt-get install xclip         ## Ubuntu下安装xclip来支持跨文件复制粘贴
  • 修改“.tmux.conf” 把以下地方修改:
1
bind -t vi-copy y copy-selection

改为

1
bind -t vi-copy y copy-pipe "xclip -sel clip -i"

如果tmux <1.8 请修改如下:

1
2
3
# copy & paste between tmux and x clipboard
bind C-p run-shell "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer"
bind C-y run-shell "tmux show-buffer | xclip -sel clip -i"

修改“.tmux.conf.local”把以下地方注释去掉:

1
2
# set -g status-keys vi
# set -g mode-keys vi

GIT:

日常都会用到几个git库,有包含同事的和自己的。管理起来都比较麻烦,但是利用到git子模块会比较方便。

1
2
3
4
5
6
7
$ mkdir xxxx
$ git init
$ git remote add origin ssh://[email protected]/mickey/xxxx.git
$ git submodule add ssh://[email protected]/mickey/tttt.git xxxx
$ git add -A
$ git commit -m "add submodule tttt"
$ git push --set-upstream origin master

当需要全部更新的时候:

1
$ git submodule foreach git pull

初始化:

1
2
3
4
5
6
➜  ~ git clone ssh://[email protected]/mickey/xxxx.git
➜  ~ cd xxxx
➜  xxxx git:(master) git submodule init
➜  xxxx git:(master) git submodule sync
➜  xxxx git:(master) git submodule update
➜  xxxx git:(master) git submodule foreach git pull origin master