dotfiles、软连接、模块化,有没有大神给一个最优雅的使用方案?我想抄个作业
- 0次
- 2021-06-15 14:52:09
- idczone
最近刚接触到这块,发现大家的方案基本上都是创建一个 dotfiles,然后将配置文件集中放到里面,然后使用软连接连接到使用的地方。
然而最近听说有大神还可以在这块上继续使他们模块化,这样后期维护起来会非常方便。
经典的比如 vimrc,zshrc,alias 等文件分门别类,然后统一引用,交替使用。后期维护起来,可以根据自己的需要来进行开关,修改。听上去很不错,网上看了很多,但是都是东一块西一块的。有没有大神给个现成作业抄一抄?
https://github.com/anishathalye/dotbot
虽然我不知道你说的模块化是不是这样
我个人的感觉是,一旦某一套配置用习惯了,可们很久都不会再更新,所以我后来就放弃了对各种复杂的管理工具的追求,软连接就够了……
不过要推荐工具的话可以试试 dotdrop
其实比软链接稍进一步就好很多吧:在各个环境里面去 source dotfiles 而不是把 dotfiles ln 出去,这样可以在本地添加一些不想同步的配置,比如尝试一些新配置,觉得稳定了再扔进 dotfile 里面去
另外如果你是 Emacs 用户的话用 org-mode (babel) 来管理是挺完美的选择,比较容易模块化
最基本的就是利用好 vcs 来管理,链接、gnu stub 这样的。
进阶点要根据不同设备 /系统使用不同配置,引入模板、宏、hook 脚本等复杂方案。
https://www.atlassian.com/git/tutorials/dotfiles
这种做法好像没有用软连接,而是用了 git bare 的特性
> 然而最近听说有大神还可以在这块上继续使他们模块化,这样后期维护起来会非常方便。
> 经典的比如 vimrc,zshrc,alias 等文件分门别类,然后统一引用,交替使用。
直接软链接不也是这样的么……不好意思贴自己的 dotfiles,贴个大佬的吧: https://github.com/farseerfc/dotfiles
查查 gnu stow
看看 yadm
推荐使用 gnu stow , https://farseerfc.me/using-gnu-stow-to-manage-your-dotfiles.html
放弃了管理工具,直接特定几个命令弄完就好……
反正都是拉现成配置
我的 https://github.com/huobazi/dotfiles
https://github.com/seagle0128/dotfiles
自己写安装脚本,参考我的 bootstrap.sh
https://github.com/hanxi/dotfiles
设计思想参考这个文章 https://zhuanlan.zhihu.com/p/50080614
yadm, https://yadm.io/
用 Git 管理 dotfiles