作者upyours (hijos de puta)
看板Editor
标题[vim ] 使用git submodules跟pathogen同步plugin
时间Wed Sep 7 23:52:40 2011
利用github.com跟pathogen达成多台电脑间的vim plugins同步
出处
http://vimcasts.org/episodes/synchronizing-plugins-with-git-submodules-and-pathogen/
我试了好多人的设定档,可是都不太满意,所以乾脆自己做一个
也方便把我的开发机跟linux server的vim都搞成同一个样子(不用每次手动)
把 .vimrc 跟 .gvimrc 搬到 ~/.vim 里面,同个目录方便git管理
mv .vimrc ~/.vim/vimrc
mv .gvimrc ~/.vim/gvimrc
再把 ~/.vimrc symbolic link到 ~/.vim/vimrc (gvimrc也是)
ln -s ~/.vim/vimrc ~/.vimrc
ln -s ~/.vim/gvimrc ~/.gvimrc
本地init一个repo (osx本身没附带git,请brew install git最方便)
cd ~/.vim
git init
制作一个README,方便往後操作(copy/paste)
=============README EXAMPLE==============
Installation:
git clone git://github.com/mywarr/dotvim.git ~/.vim
Create symlinks:
ln -s ~/.vim/vimrc ~/.vimrc
ln -s ~/.vim/gvimrc ~/.gvimrc
Switch to the `~/.vim` directory, and fetch submodules:
cd ~/.vim
git submodule init
git submodule update
===============README EOF==================
安装pathogen
mkdir -p ~/.vim/autoload ~/.vim/bundle
curl https://raw.github.com/tpope/vim-pathogen/HEAD/autoload/pathogen.vim \
> ~/.vim/autoload/pathogen.vim
改~/.vim/vimrc,把底下两行加到档案最上头
call pathogen#runtime_append_all_bundles()
call pathogen#helptags()
底下顺便加一行
filetype plugin indent on
顺手commit一下好了,记录做了什麽改变
git add .
git commit -m "add pathogen as meta-plugin"
接下来要把~/.vim放上github,多工作环境同步、备份兼版本管理
github.com的设定rsa key那些在网站上都有详细图解,这边不赘述
(设定完了之後...)
到github create一个新的repo,我设定此专案叫做dotvim
回到本机~/.vim目录下
git remote add origin [email protected]:mywarr/dotvim.git
git push -u origin master ^^^^^^ ^^^^^^ 请自行替代
这样github上就有最基本的vim环境设定了
用submodule的方式来安装plugins
因为现在很多plugin都放在github上了,用这方式可以随时update到最新版本
底下以fugitivea -- a git wrapper for Vim这只plugin为例
cd ~/.vim
git submodule add http://github.com/tpope/vim-fugitive.git bundle/fugitive
git add .
git commit -m "Install Fugitive.vim bundle as a submodule."
git push
git pull
接着可以回github看看变化
安装在其他电脑上,如linux server
cd ~
git clone http://github.com/mywarr/dotvim.git ~/.vim
ln -s ~/.vim/vimrc ~/.vimrc ^^^^^^请自行替换
ln -s ~/.vim/gvimrc ~/.gvimrc
cd ~/.vim
git submodule init
git submodule update
更新plugin
单体更新范例
cd ~/.vim/bundle/fugitive
git pull origin master
全体更新
git submodule foreach git pull origin master
结论:花一点少少时间可以省去以後很多麻烦
还有请推荐我一些提高生产力的plugin跟美丽的:color 暗色系为佳:)
--
the deadliest form of violence is poverty.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.248.165.62
※ 编辑: upyours 来自: 111.248.165.62 (09/07 23:57)
1F:推 kalawang:nerdtree nerd_commentor snipMate minibufexplorer 09/08 00:29
2F:→ kalawang:taglist 09/08 00:30
3F:推 kalawang:a 09/08 00:33
4F:推 martinku:推这篇! 09/08 09:21
5F:→ upyours:minibufexpl好棒 不用默记了 09/08 13:07
6F:→ curist:bufexplorer delimitMate endwise matchit repmo supertab 09/08 20:18
7F:→ curist:command-T git_vim tagbar, color: desert256, wombat256 09/08 20:19