はじめに
最近は、bashやらemacsをいじることがおおい。設定ファイルを自宅のPCとノートPCの間で同期するようなよい方法はないものかと思った。また、会社でも自宅の設定がふとみたくなったとき、涙をのんでほぞを噛みつつ定時退社の夢を見ている。
そんななか、githubに設定ファイルをバックアップ&同期する方法を見つけたので、やってみた。
なお、元ネタはこの本です。最近、熱中して読んでいる。チョーオススメ!!
Emacs実践入門 ~思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus) https://amzn.to/3xe1IDc
githubにバックアップする方法
dotfilesディレクトリに設定ファイルを移動
設定ファイルを一箇所にあつめて、そこでgitリポジトリを作成します。
$ mkdir dotfiles
$ cd dotfiles/
$ mv ~/.emacs.d/ .
$ mv ~/.bashrc .
シンボリックリンク作成
次に、dotfilesディレクトリからホームディレクトリに対して
シンボリックリンクを作成
します。これが、githubで設定ファイルを管理するためのキモです。シンボリック作成は以下のコマンドで行けます。
$ ln -s ~/dotfiles/.emacs.d ~/
$ ln -s ~/dotfiles/.bashrc ~/
ただし、量が多くなると大変なので、シェルスクリプトを書きました。
git リポジトリ作成&github連携
gitリポジトリを作成して、githubと連携します。githubとの連携はいつもの方法です。過去記事もどうぞ。
githubに新しいリポジトリを作成してローカルのリポジトリをアップロードする | Futurismo
あらかじめ.gitignoreを作成しておきます。とりあえず、こう書いとく。多分、変える。
# All Ignore
*
# Except
# Emacs
!/.emacs.d/init.el
!/.emacs.d/conf
!/.emacs.d/elisp
!/.emacs.d/public_repos
!/.bashrc
!/.gitconfig
!/.gitignore
!/.screenrc
!/.minttyrc
いつもの手順でgithub連携。
$ git init
$ git add .
$ git ci -m"first commit"
$ git remote add origin https://github.com/tsu-nera/dotfiles.git
$ git push -u origin master
https://github.com/tsu-nera/dotfiles.git
おわりに
githubを使うことで、自分の開発環境に対するカスタマイズの歴史を、もっといってしまえば自分のプログラミングに対する歴史を記録することができる。そんなところがとても気に入った。
この開発環境の歴史を、5年後、10年後に見直したら、きっと楽しいだろう。これは、自分のプログラミングのライフログだ。