Vim是一个强大的文本编辑器。良好的配置更能便利对Vim的使用。有时候,我们会在几台不同的电脑上使用Vim. 例如,我们可能在自己的电脑和公司的电脑上都安装了Vim. 有时候,我们需要实现,如果我们配置好了其中一个Vim环境,就能轻松的把这些配置很容易的复制到另外一台机器,甚至于我们更新其中一台机器甚至几台机器的配置之后,可以很容易的将其同步到其他机器。好在现在有较多的云存储的选择。利用它们,加上一个版本控制软件,我们就可以很容易的做到这一点。

本文中,作者选择了百度云作为云存储,而版本控制,则选择了git. 本文针对Windows下面的GVim.

首先,我们需要在每台机器上都安装百度云同步盘和git客户端

  百度云同步盘:http://pan.baidu.com/download

  git 客户端:http://www.git-scm.com/downloads

第二,在每台机器上,我们需要如下的目录结构

  vim文件夹:指安装vim的目录。

  云盘文件夹:指在百度同步盘中指定的本机的同步目录。

第三,如果没有配置过git, 运行git bash, 如下配置git. 同样,对于云同步盘,也要指定本地同步目录。

  git config --global user.name "your name"
  git config --global user.email "your email"

第四,在任一台机器上,执行如下操作,创建vim配置文件的仓库

  1. 运行git bash, 执行如下命令,创建云同步盘中的目录

    cd 云盘文件夹  (例如,/c/YunDisk/GitRepositories/)
    mkdir vim
    cd vim
    git init --bare

  2. 以管理员权限运行git bash, 执行如下命令,将vim配置文件加入版本控制

    cd vim文件夹 (例如,“/c/Program Files (x86)/Vim")
    git init
    git add _vimrc
    git commit -m "first version."
    git remote add origin 云盘文件夹  (例如,/c/YunDisk/GitRepositories/)
    git push -u origin master

  至此,我们已经将本地的vim配置文件加入了版本控制,并且同步到了云同步盘中。

第五,在其他机器上,执行如下操作,将云同步盘中的vim配置文件同步到vim文件夹中

  以管理员权限运行git bash, 执行如下命令

    cd vim文件夹 (例如,“/c/Program Files (x86)/Vim")
    git clone 云盘文件夹  (例如,/c/YunDisk/GitRepositories/)
    git remote add origin 云盘文件夹  (例如,/c/YunDisk/GitRepositories/)
    git pull origin master

  到现在为止,所有机器上的vim配置文件都加入到了版本控制中,并且都进行了同步

第六,当修改了任意一台机器上的vim配置,进行如下操作将其同步到云同步盘

  以管理员权限运行git bash, 执行如下命令,将vim配置文件加入版本控制

    cd vim文件夹 (例如,“/c/Program Files (x86)/Vim")
    git add _vimrc
    git commit -m "your comments."
    git pull origin master    // 先同步其他机器的更新到本机,如果有冲突,要处理冲突
    git push origin master   //提交本机的更新

第七,对于其他机器,执行如下操作来同步这些更新

  以管理员权限运行git bash, 执行如下命令,将vim配置文件加入版本控制

    cd vim文件夹 (例如,“/c/Program Files (x86)/Vim")
    git pull origin master

至此,我们就可以在自己的所有机器上同步vim配置文件了。

Vim实用技巧系列 - 利用百度云和git实现vim配置多机共享的更多相关文章

  1. Vim实用技巧系列 - 开篇

    作者使用Vim已经有一段时间了,深深觉得它是一个非常强大的编辑器,使用习惯之后效率很高.最大的缺点是学习曲线比较陡峭.因此作者希望分享一些自己在实际使用中的经验来帮助初学者,同时也帮助作者自己学习. ...

  2. Vim实用技巧系列 - 搜索

    最近发现了一个很好的VIM资源,best of vim tips, 展示了一系列很有用的vim 技巧.博主会逐个翻译介绍这些技巧. 来源: http://rayninfo.co.uk/vimtips. ...

  3. Vim实用技巧系列 - 代码注释

    在写代码时候,有时候需要临时注释掉一部分代码,之后还要取消这些注释.真麻烦.那么,用Vim怎么做这件事呢? 第一种方法,块模式.                 再次声明,本系列全部以windows下 ...

  4. Vim实用技巧系列 - tab和空格的转换

    有时候,我们会修改一些代码,而这些代码中的tab设定和我们自己的设定不一样.例如,我们自己的设定是以两个空格来代替tab,而要修改的代码则是使用tab.那么,我们应该怎样快速的将又有的tab转换为空格 ...

  5. ###《VIM实用技巧》

    ###<VIM实用技巧> #@author: gr #@date: 2015-11-20 #@email: forgerui@gmail.com <VIM实用技巧>阅读笔记. ...

  6. vim实用技巧总结

    1. 单个文件内实用mark来帮助跳转以及一些宏操作.(注意:mark不能用于多文件之间的跳转)mch 设置宏,保存到ch标记(不是ch寄存器)'ch 跳转到标记的行首`ch 跳转到标记的字符处另:为 ...

  7. 很全面的WinRAR实用技巧系列 - imsoft.cnblogs

    WinRAR也可以管理我的桌面时间长了,桌面上堆的东西实在太多,平时该如何管理呢?安装了WinRAR的朋友可以请它来帮忙,用它管理清除无用的桌面文件或图标. 以XP系统为例,系统所在目录是“c:\wi ...

  8. 《Vim实用技巧》第2版读书笔记

    学习前的建议: 一.如果你需要一个功能强大的文本编辑器,速度飞快.使用方便.代码补全.编程强大.定制性强,Vim就是你需要的: 二.学习入门曲线陡峭,但是使用后期异常简单,效率超高: 三.号称可以跟上 ...

  9. git本机服务器配置(四):git+TortoiseGit+gitblit配置本机服务器

    1.配置本机git服务器 1.1 打开gitblit服务器,登录之前设置的服务页面localhost:1081 1.2.登录账号,账号在(三)中有提到. 1.3 打开用户中心 1.4 点击SSH Ke ...

随机推荐

  1. hdu-1041(大数模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1041 题意:电脑中存在数字1,进行扩展操作,如果遇到1变为“01”,如果遇到0,变为“10”,经过一次 ...

  2. 安卓开机logo和开机动画的几种实现方法

    安卓4.2可用方法2-4,第一种方法未验证. 从理论上来说,android 有4个开机启动画面. 第一个应该是U-BOOT的启动画面,有些设备为了满足按动电源即有显示,在UBOOT里加了开机画面,实现 ...

  3. python中global 和 nonlocal的使用

    1.global关键字用来在函数或其他局部作用域中使用全局变量.但是如果不修改全局变量也可以不使用global关键字. gcount = 0 def global_test(): gcount+=1 ...

  4. event based xml parser (SAX) demo

    import java.io.ByteArrayInputStream; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SA ...

  5. mui框架如何实现页面间传值

    mui框架如何实现页面间传值 我的传值 listDetail = '<li class="mui-table-view-cell mui-media>">< ...

  6. CentOS 5.8下快速搭建FTP服务器

    学习安装和配置vsftpd: 实验环境:CentOS 5.8 x86_64 测试环境关掉防火墙和selinux. service iptables stop setenforce 0 1.安装vsft ...

  7. CentOS 5 上配置 Redmine 和 Git

    现在我们用 Trac + Git 来管理所有的项目,早些时候是由 Trac + Subversion 管理的,和 Git 比较起来 Subversion 简直就是龟速.虽然我们前段时间换成了 Git ...

  8. android webview使用心得 屏幕宽度自适应

    webview中右下角的缩放按钮能不能去掉 settings.setDisplayZoomControls(false); //隐藏webview缩放按钮 让Webview加载的页面居中显示有我知道的 ...

  9. 王家林系列之scala--第69讲:Scala并发编程react、loop代码实战详解

    刚才看了一下,群里王家林老师又更新课程了,真为王老师的勤奋感到佩服,于是迫不及待的下载下来观看学习.本期讲的是关于scala并发编程的react.loop代码实战. 信息来源于 DT大数据梦工厂微信公 ...

  10. hadoop和spark相关参数的配置

    背景 MapReduce和Spark对外提供了上百个配置参数,用户可以为作业定制这些参数以更快,更稳定的运行应用程序.本文梳理了最常用的一些MapReduce和Spark配置参数. MapReduce ...