如果你拥有多台 Linux/macOS 主机,那么不可避免地,你会遇到 Dotfile 配置文件问题,例如常见的 .zshrc、.vimrc。过往我的方法是通过复制的方式在多台主机之间同步配置,但是比较低效,因此决定采用 Git 来管理这些配置文件,并在不同的主机之间同步。
Dotfiles 配置文件可能包含个人敏感信息,例如登录凭据,因此仓库一定要配置成私有仓库。
在本地创建 Dotfiles 仓库
创建一个目录,例如
~/.local/dotfiles;mkdir -p ~/.local/dotfiles将需要同步的配置文件,移动到这个目录中;
mv ~/.zshrc ~/.local/dotfiles/dot_zshrc在这些配置文件的原来目录下,创建这些文件的符号链接。
ln -s ~/.local/dotfiles/dot_zshrc ~/.zshrc
初始化Dotfiles仓库
进入到Dotfiles目录;
cd ~/.local/dotfiles添加配置文件并提交;
git add dot_zshrc git commit -m "feat: Initial commit"推送到远程仓库,例如Github/Gitea等。
git init -b main git remote add origin https://github.com/simaek/dotfiles git push -u origin main
在其他主机上应用配置
- 确保主机安装了Git;
在同样的目录,克隆Dotfiles仓库;
mkdir -p ~/.local cd ~/.local git clone https://github.com/simaek/dotfiles为需要同步的配置文件创建符号链接;
# 如果已经存在,根据实际情况决定是否需要备份 mv ~/.zshrc ~/.zshrc.bak ln -s ~/.local/dotfiles/dot_zshrc ~/.zshrc