文章目录chezmoi跨多台机器安全管理你的 dotfileschezmoi跨多台机器安全管理你的 dotfiles管理多台开发机器的 dotfiles 一直是件麻烦事。手动复制配置时间一长就会混乱。chezmoi 是解决这个问题的开源工具目前在 GitHub 上已经有 20.5k Star。chezmoi 是一个用 Go 语言编写的 dotfile 管理工具核心理念是「安全、跨多台不同机器管理 dotfiles」。和市面上其他 dotfile 管理方案不同chezmoi 更强调安全性和灵活性。一些基本特点chezmoi 把你的家目录下的所有 dotfiles 纳入版本管理你可以用 GitHub 等平台存储配置在新机器上一键部署。它支持模板功能能根据不同的操作系统、机器名称、环境变量生成不同的配置文件内容。比如你在 Mac 上和工作 Linux 服务器上使用同一套配置内部逻辑却可以做到不同。安全性方面chezmoi 提供加密支持可以配合 Bitwarden、Vault、Keychain、Pass 等密码管理器使用将敏感信息加密后存储在仓库中而不是以明文形式出现在配置里。安装与使用chezmoi 支持 macOS、Linux 和 Windows安装方式多样。以 macOS 为例brew install chezmoi首次使用可以用chezmoi init初始化一个新的配置库chezmoi init这会创建一个~/.local/share/chezmoi目录用于管理所有 dotfiles。添加一个 dotfile 到 chezmoi 的管理范围chezmoi add ~/.zshrc这条命令会把.zshrc复制到 chezmoi 的管理目录中并记录原始路径。之后用chezmoi edit ~/.zshrc修改配置用chezmoi diff预览改动最后chezmoi apply应用到家目录。部署到新机器在多台机器上复用配置是 dotfile 管理的核心场景。chezmoi 的一键部署机制很直接chezmoi init --apply https://github.com/yourname/dotfiles.git一条命令完成拉取仓库、模板渲染、写入家目录的整个过程。新机器到手跑完安装脚本后执行这句就能恢复整套开发环境配置。模板功能示例chezmoi 内置了 Go 模板引擎可以根据变量生成不同的配置。比如.bashrc模板文件中可以写{{-if eq .chezmoi.os darwin}}alias lsls-G{{-else}}alias lsls--colorauto{{-end}}这样同一份配置在 macOS 和 Linux 上各自生效不用维护多个文件。适合什么场景如果你只有一台机器少量配置改动直接用 git 管理 dotfiles 就可以。但如果有多台开发机需要部分配置共享、部分按机器区分或者有敏感信息需要加密处理chezmoi 会省下大量精力。它把配置管理这套事情做得系统化了不需要自己手写脚本来处理各种边界情况。MIT 许可完全开源可以放心使用。完整的项目信息可以查看其官方文档。套事情做得系统化了不需要自己手写脚本来处理各种边界情况。MIT 许可完全开源可以放心使用。完整的项目信息可以查看其官方文档。