大家都怎样管理dotfiles?

dropBox 在我这里访问不了,不知道国内其它地方的访问状况如何。不断了解到很多人都是用 dropbox 来备份文件的,可惜我这里的网络情况不大好,无奈。

exec-path-from-shell 导入的时候是不是加了参数 -l

一般需要翻墙

加了 -l :sob:

对,加了-l速度快,但是环境变量必须写到.zshenv

就一个master branch.系统环境差异通过bash编程解决.一些临时的local branch只是为了避免外泄公司敏感信息(比如登陆公司服务器账号)而创立.

尽量选用通用的和比较小的工具. 为了节省配置的麻烦,一些工具都直接加到git了. 比如 GitHub - redguardtoo/portable-percol: portable percol (https://github.com/mooz/percol) 就是percol改写后独立于python的第三方库,直接加到git,再也不需要pip install了.

(magit-status "/yadm::")

哦,那还挺困难的。

可以参考的我dot 管理仓库。GitHub - ztlevi/dotty: Dotty with your dotfiles? Try dotty, a scalable dotfiles manager for linux and macos.

每个种类的功能分开来管理,然后集成到zsh中, saclability 非常好,可扩展性很高。跨平台支持也不错,目前使用上并没有什么问题。不过请详细阅读我的readme

nix的问题是macos和其他linux os的支持相对差一点。不过我也有在学习中GitHub - ztlevi/dotty-nix

看来就我家还没通网。靠一个u盘混江湖

哈哈哈 那这可太稳了

没事 只要多设置几个副本就可以 可以恢复。onedrive之类的也是有回收站之类的功能的。

我用 ansible playbook + gitlab. 写 ansible playbook 来自动配置, 然后放到 gitlab 上, 不同机器直接 clone 下来然后跑一遍 ansible playbook 就好了。 ansible 也能判断操作系统、 hostname 之类, 所以如果某台机器有特定配置, ansible 也能搞定。

1 个赞

这个东西会不会太重了啊 :rofl:

如果只是管理 dotfile 那用 ansible 有点重。 我最开始也是用 git + symbol link 的方法来管理 dotfile, 只是当 dotfile 多起来后, 手动一个一个创建软链接也挺烦, 就写了个小 bash 脚本创建软链接, 后来这个 bash 脚本又加入了安装常用包的内容, 再后来又加入了编译安装自己写的小工具的内容, 这个 bash 脚本就很难看了。 当时正好我在学习使用 ansible, 就顺势使用 ansible 了。

这是我目前个人在用的,不知道有没人和我一样。

之前也找过现成方案,基本都是采用建立软链接的方式。 但是软链接有一个问题是,无法对 git 管理的配置进行扩展(除非对应配置有类似 include 的扩展机制),有些本地特定的配置就没法灵活添加(比如代理)。

后面自己想了一个办法,统一的配置放在 git 仓库中管理,安装的时候在最终的 dotfiles 中添加 block 标记;如果有个性化的配置,在 block 前后添加都可以。

如果仓库有更新,再次安装的时候替换更新 block 标记,这样也能够保留配置的相对顺序(有的配置可能有依赖,比如环境变量)