0. 背景
换电脑的时候,需要把一些配置文件 从旧电脑迁移到新电脑上,比如 .zshrc
、.vimrc
、.gitconfig
等等。
有些文件不一定放在 home
目录下,比如 .ssh/config
、.config/.starship.yaml
, 这些文件手动迁移的话,比较麻烦。
所以需要一个工具来管理这些配置文件。
1. 具体需求
- 支持多平台,比如 macOS、Linux、Windows。
- 支持版本管理,比如 git。
- 支持模版。
大概调研了一下,发现有这么几个工具可以管理 dotfiles:
chezmoi
满足要求,而且是用 Golang
写的,没有什么依赖,所以就用 chezmoi
了。
2. 安装
sh -c "$(curl -fsLS get.chezmoi.io)"
其他安装方式见 Install
3. 使用
3.1 初始化
ヒント
初始化之后,会在 home
目录下生成一个 ~/.local/share/chezmoi
目录(本地仓库),用来存放 chezmoi
的配置文件。
可以 通过 chezmoi cd
命令进入该目录。
3.2 添加文件
3.3 更新文件
ヒント
更新了文件了之后,记得提交到远程仓库。可以参考上一节。
3.4 从远程仓库拉取文件
远程仓库有更新了,需要拉取到本地。
chezmoi update
等价于
chezmoi git pull origin main
chezmoi apply