本周是成胖子每周一博的第十三周:)
前言
在github上偶然浏览到dotfiles.
因为Unix及Linux下的很多配置文件都是隐藏文件,以”.”开始,所以我们用dotfiles称呼这些文件.
dotfiles整理有三个目的:
-
备份/存储/同步
-
学习/发现
-
分享
对于开发人员而言,一个代码编辑环境无疑是重中之重.我最近组装和改造了我自己的dotfiles.非常欢迎fork和使用,如果有什么问题,可以互相交流.
dotfiles原理
在类Unix环境下,用户的配置在用户主目录下.比如bashrc,vimrc.我们一般都是直接修改这里.
如果有备份的需求怎么办呢?
最简单的办法就是把相应的文件打包压缩,然后就可以放到网盘或者U盘当中了.
可是如果我们经常不时地更新配置文件,怎么才能很方便地压缩呢?
- 有个笨办法,我每次更新完了,我就自己手动把每个文件重新压缩下.
- 升级一下,可以写个简单地脚本,每次自动执行压缩命令
- 再升级一下,可以把所有的配置文件拉到一个文件中,然后软链接到用户主目录.
配置文件要怎么存储呢?
- 毫无疑问,放到云上是最好的.dropbox或者百度云都还不错.
难道我每次要自己手动同步么?
- 我们现在有了github这么方便的工具,不使用一下太可惜了.
综上,我们把常用配置放到同一个文件夹中,然后将它们链接到用户主目录.同时将这个文件夹加入git版本管理,最后上传到github当中.
安装主要过程
我希望可以通过执行一条命令,把任何环境配置成自己最熟悉趁手的环境.
一键脚本主要包含如下几个步骤:
-
安装必要的软件,比如homesick,git,cmake,ctags等.
-
备份现在的配置文件.
-
安装zsh框架oh-my-zsh
-
创建软链接
-
安装vim框架spf13
-
安装小工具thefuck
-
尝试编译YouCompleteMe
安装说明
前面我们已经提及了我们的主要过程,程序员当然不应该重复造轮子,所以我选用了大量的现有组件.
- 下载配置,创建软链接,同步配置
使用homesick,使用方法和命令非常类似于git,缺点是没有提供原有文件的备份.
- zsh配置
直接使用了很火的oh-my-zsh
- vim配置
vim真的是博大精深,用了这么久了,还是每次都有新发现,真的不愧是是编辑器之神.我使用了spf13的vim配置.基本主流插件都有了,而且比较容易进行个人定制.
- 我的工作
我主要做的就是使用shell脚本备份原有配置,同时尽量把安装过程自动化.我只在很有限的几台电脑上测试过.如果使用过程中有问题,请issue告诉我.
私人定制
每个人都有自己的喜好,我的配置你不一定趁手.如果想进行个人定制,简单的三步就可以了.
-
进入github,fork我的仓库.
-
将README.md中的一键安装脚本路径修改为你自己的仓库.
-
将仓库中的install.sh文件头部的
REPO_URL
修改为你的仓库名.
这样你就拥有了可以陪伴自己一生的工具箱,关于我们主要组件的使用方法请去原作者网页浏览,如果有机会,再给大家介绍.
使用小结
我目前主要使用Linux Mint.我的命令终端使用konsole.tmux主要用于控制多个窗口.oh-my-zsh使得命令行操作更加高效强大.vim的配置插件让你的手指在键盘上舞蹈.
如果有机会真的要尝试下,八星八钻,花30分钟,你买不了吃亏,你买不了上当.抱着试一试地态度,你真的会爱上它们.
尾记
今天只是简要地说明了我的dotfiles.说实话,我想做这个已经很久了,一直拖.现在总算是阶段性完成了.如果有人能够受益,多使用真的是太好了.