背筋を伸ばしてスタートアップするブログ

株式会社ペライチでCTOをやっています。

dotfilesリポジトリでPCの設定ファイルをクラウド管理する

最近vimの勉強をしてる中で.vimrcなどの設定ファイルをGitHubで管理する方法を知ったので記事にしようと思います。

dotfilesとは

dotfilesというのは「.vimrc」「.bash_profile」などの文字通りドットからはじまる設定ファイルを指します。これらの設定ファイルをローカルだけで管理するのは心もとないのでGitHubにリポジトリを作ってクラウド管理しようというものです。

この管理方法であればPCが新しくなっても環境設定をいちからやり直す必要がなくなります。

やり方

1. GitHubにてdotfilesリポジトリを作成する

GitHubにてdotfilesリポジトリを作成し、PCのホームディレクトリにしcloneします。

2. 管理対象のファイルをdotfilesディレクトリに移動

cloneしたdotfilesディレクトリに管理対象のドットファイルを移動します。以下のようにmvコマンドで移動してもいいですし、Finder操作でも構いません。

$ mv .vimrc dotfiles
$ mv .bash_profile dotfiles
…

僕はコマンド打つのが面倒だったのでFinderで複数選択してファイル移動させました。

※ うっかり秘密鍵などを移動してしまわないよう必ず目視確認しながら作業することをおすすめします。

3. シンボリックリンクを貼る

一つひとつのファイル、ディレクトリに対してlnコマンドでシンボリックリンクを貼るのは大変なのでこちらはシェルスクリプトを使います。このファイルもdotfilesディレクトリの直下においておきます。

#!/bin/bash

for f in .??*
do
    [[ "$f" == ".git" ]] && continue
    [[ "$f" == ".DS_Store" ]] && continue
    ln -snfv ~/dotfiles/"$f" ~/
done

4. GitHubにpushする

GitHubのdotfilesリポジトリにpushして完了です。

参考までに僕のリポジトリを載せておきます。

github.com

参考リンク

上記手順はこちらのリンクを参考に作成しました。 https://qiita.com/okamos/items/7f5461814e8ed8916870 https://qiita.com/b4b4r07/items/b70178e021bef12cd4a2

日々の運用方法

設定ファイルに新しい内容を記述したらcommitしてGitHubにpushします。また、新しいPCに設定を反映するときはリポジトリをcloneした上で上記手順の2と3を行えばOKです。

まとめ

バックアップという意味だけでなく、設定ファイルにいつどんな追加をしたのかが追えるようになるのは便利そうだと思いました。