注意事項
現在ではこの運用方法ではなく、ansibleで管理しています。こちらも参照なさってください。
https://hiramekun.hatenablog.com/entry/2019/01/26/004229
目標
様々な設定ファイルをgithubで管理運用するのは、以下のような目標があります。
- 他のpcに乗り換えた時に環境構築を簡単に行いたい
- 設定ファイルのバックアップを取っておきたい
- 他の人に自分の設定ファイルを共有したい
しかし、普通に管理しようとすると、github上に設定ファイル分のレポジトリを作成することになります。そこで、今回はdotfilesというレポジトリ一個で全ての設定ファイルを管理する方法をまとめておきます。
dotfilesをレポジトリ管理
管理用ディレクトリ作成
ルートディレクトリに、管理したいファイルをまとめておくディレクトリを作成します。
$ mkdir dotfiles
そこに、管理したいファイルを全て入れます。私の場合は、zsh/bash/fish, vim, karabiner, bettertouchtool, ide用のideavimrcなどを管理しています。
$ mv ~/.config/fish ~/dotfiles/fish
$ mv ~/.bashrc ~/dotfiles/.bashrc
$ mv ~/.zshrc ~/dotfiles/.zshrc
etc...
シンボリックリンクを貼る
このままでは、本来ファイルがあるべき場所に設定ファイルがないので、mvしたファイルの設定が読み込まれないことになります。
なので、シンボリックリンクを貼って、本来ファイルがあるべき場所にaliasを設定します。
$ ln -sf ~/dotfiles/fish ~/.config/fish
$ ln -sf ~/dotfiles/.bashrc ~/.bashrc
$ ln -sf ~/dotfiles/.zshrc ~/.zshrc
githubにpush
こちらの記事などを参考にして、githubにdotfilesという名前のレポジトリを作成→commit→pushという流れでgithubに登録します。
https://qiita.com/ay3/items/8d758ebde41d256a32dc
自分のdotfilesはこちらにあります。
https://github.com/hiramekun/dotfiles