Dotfiles作成
2018年10月3日
目次
Dotfilesリポジトリの作成
こんにちは!ウェブエンジニアのジワタネホです!
今日はローカル開発環境を素早く構築するためのDotfilesリポジトリを作ったので備忘録として!
ちなみにPCはMacなので、windowsの方はさっと見で!
ちなみに以下のMacのエイリアスに関する記事でも多少触れています。
ローカル開発環境構築の効率化を検討している方の参考になれば!
GitHub
https://github.com/yuki-yoshida-z/dotfiles
前提知識
基本的にターミナル上での作業となります。
なので黒い画面に拒否反応を起こす方は難しいかもしれません。
がしかし、大したことをするわけではないですし、そもそもドットファイルを管理する以上黒い画面からドットファイルは触っているはずなので問題ないかとは思います。
Dotfilesとは
ドットファイルとはなんでしょう。
ファイル名の頭にドットがつくファイルのことです。
そのまんま。東。
余談ですが、最近つまらないとわかっていても思いついたギャグをアウトプットしてしまうようになりました。
年齢ですかね。
話がそれました。
でドットファイルですが、例えば良く使うのだと、「.htaccess」とか「.bash_profile」とかですかね。
このファイルはGUI上、つまりMacだとFinderなんかからは設定をしない限り見えません。
隠しファイル的なやつですね。
なぜファイルを隠すかって、細かいことは調べる気になれませんが、開発者などPCに対して一定度合いの知見がある人以外が間違えて開いて編集しないようにってとこですよね。おそらく。
で、そのドットファイルを確認するにはターミナル上で、
ls -a
とします。
大まかな手順
- 共通化したいDotfileの選定
- ローカルにフォルダを作成し各ファイルを置く
- シンボリックリンクをはる
- シェルの作成
手順詳細
共通化したいDotfileの選定
普段何を使ってどんなファイルをいじっているかによりますが、
私の場合普段の作業内容は、
- ターミナルでLinuxコマンド使う
- ターミナルからgitコマンド使う
- ターミナルからvagrantコマンド使う
- neo vim使う(絶賛修行中)
こんなものかしら。
少なwww
とりあえず思いつくのはこんな感じ。
ローカルにフォルダを作成し各ファイルを置く
ということなので、ローカルのルート直下にフォルダを作成します。
名前はなんでもいいと思います。
ちなみにここでの名前をリポジトリ名にする想定です。
私の場合はdotfilesです。
cd ~ mkdir dotfiles
そしてその配下に各設定ファイルを移動させます。
どのファイルをどう移動すればよいかですが、
ルート直下のドットファイルを確認してください。
このタイミングで自分の使っている機能の設定がどこで書かれているのかを知るいい機会かもしれませんね。
私の場合は、
- Linuxコマンド:.bash_profile or .bashrc
- Git コマンド:.gitconfig
- neovim(要インストール):.config/nvim/init.vim(通常は自分で作るんだったはず)
- vim:.vimrc( これもなければ作るんだったか。。)
こんな感じですかね。
これらのファイルをDotfilesは配下に移動させます。
nvimに関しては、.configディレクトリを使ってディレクトリ層を深くする意味は特にないので、nvimディレクトリからコピーします。
シンボリックリンクをはる
このままだと当然Dotfiles以下にファイルはありますが、各設定を読んではくれません。
そこでパスを通す必要があります。
パスを通すとは、GUIでいうところのショートカットアイコンを作るのと同じだと思ってもらえらば!
今回は、各種デフォルトでの設定ファイルを読んだらDotfiles以下の各種設定ファイルにショートカットして飛んでDotfiles以下のファイルを読むと。
そんな流れです。
ln -sf ~/dotfiles/.vimrc ~/.vimrc ln -sf ~/dotfiles/.bash_profile ~/.bash_profile ln -sf ~/dotfiles/.bashrc ~/.bashrc ln -sf ~/dotfiles/.gitconfig ~/.gitconfig ln -sf ~/dotfiles/nvim ~/.config/nvim
シェルの作成
今回の要件は、別マシンでも開発環境を簡単に手に入れるだったので、上記のシェルを作りましょう。
これでこのシェルを実行すればいつもの開発環境が手に入るようになると。
ファイル名は何でもよいと思います。
Dotfiles直下に置きます。
私の場合はdotfiles.shにしました。
#!/bin/sh ln -sf ~/dotfiles/.vimrc ~/.vimrc ln -sf ~/dotfiles/.bash_profile ~/.bash_profile ln -sf ~/dotfiles/.bashrc ~/.bashrc ln -sf ~/dotfiles/.gitconfig ~/.gitconfig ln -sf ~/dotfiles/nvim ~/.config/nvim
ちなみにシェルの実行は、
sh ファイル名
です。
完成と残された課題
これでドットファイルの完成です。
私のドットファイルは以下です。
nvimやらpython3やらの、もっと言えばhomebrew等のインストールも自動にすべきなんだろうなー。
ただ、開発環境の構築って毎日やるようなことではない。というか多くて年間数回な気がするんであんまりこだわりすぎてもなと思ったり思わなかったり。
個人的にはエディタ系の設定とコマンド系のエイリアスさえ直ぐに環境が整えばいいかなくらいの温度感なのでね。
最後に
いかがだったでしょうか?
他にこのファイルもドットファイルにするといいよ的な意見があればコメントください!
本日はここまで!