ひらめの日常

プログラミングと読書と

dotfilesの管理/運用方法をまとめる

目標

様々な設定ファイルをgithubで管理運用するのは、以下のような目標があります。

  1. 他のpcに乗り換えた時に環境構築を簡単に行いたい
  2. 設定ファイルのバックアップを取っておきたい
  3. 他の人に自分の設定ファイルを共有したい

しかし、普通に管理しようとすると、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に登録します。
qiita.com

自分のdotfilesはこちらにあります。

github.com