chezmoi是一个跨多台不同的机器管理 dotfiles 的工具,方便每次在新的电脑/服务器的时候不用麻烦的重新配置一些 config 了
dotfile: 简言之就是应用程式的 config,例如
~/.vimrc
就是dotfile。Linux万物皆文件,Linux 文件名以点开头就会变成隐藏文件,一般也是配置文件,不让一般使用者看到。
1 安装
安装带自定义路径中:
bash
sh -c "$(wget -qO- chezmoi.io/getlb)" -- -b $HOME/.local/bin
但是一般由于网络问题连不上,请开启代理,或者配置代理之后使用 proxy
命令:
bash
sh -c "$(proxy wget -qO- chezmoi.io/getlb)" -- -b $HOME/.local/bin
由于是自定义安装路径在 $HOME/.local/bin
,所以在 .bashrc
或者 .zshrc
中加入PATH:
bash
# echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
# source ~/.bashrc
source ~/.zshrc
2 使用
-
初始化 chezmoi
bashchezmoi init
这会在
~/.local/share/chezmoi
中创建一个新的 Git 本地仓库,chezmoi
将在此存储其源状态。 -
添加要管理的第一个文件:如将
~/.bashrc
文件交给 chezmoi 管理bashchezmoi add ~/.bashrc
~/.bashrc
会被复制到~/.local/share/chezmoi/dot_bashrc
。 -
查看和应用更改
查看 chezmoi 将对文件系统做出的更改:
bashchezmoi diff
然后应用更改到文件系统:
bashchezmoi -v apply
-
提交更改到 Git:进入 chezmoi 的源目录使用 Git 提交更改
bashchezmoi cd git add . git commit -m "Initial commit"
-
推送到 GitHub:先创建一个名为
dotfiles
的 GitHub 仓库,然后运行以下命令,将 dotfiles 推送到远程仓库:bashgit remote add origin [email protected]:$GITHUB_USERNAME/dotfiles.git git branch -M main git push -u origin main
3 设置新机器
直接通过一行命令即可将在 Github 上的已有的 dotfile 存储库配置到这台新机器上:
bash
chezmoi init --apply https://github.com/$GITHUB_USERNAME/dotfiles.git