Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

【初心者向け】はじめてのdotfiles

$
0
0

dotfilesってなに

ホームディレクトリ配下にある.bashrcとか.vimrcとかをGithubで管理してポータブルにする方法。WEB業界のエンジニアはよくやってるらしい。設定ファイルがだいたいドットで始まってるからドットファイルと呼ぶ。

なにが嬉しい?

会社、家、仮想環境とそれぞれの環境のPCで設定を簡単に共有できる。
便利な設定見つけたけど他のPCでも設定書くのめんどくさいなー。ってのがなくなる。

ちなみに私のプロフィール

銀行のシステムのきっちりした世界で2年勤めて3ヶ月ほど前にWEB業界(Rubyメインの開発)にジョブチェンジ。
前職ではGithubなんてものは使ってなかったので設定ファイルをポータブルにするなどという発想はありませんでした。。

やり方

前提

  • githubアカウント持ってる
  • githubの使い方の基本的なところは抑えている
  • macやLinux等のUnix系OSで開発している

手順

① ターミナル開いてcdしてホームディレクトリに移動してmkdir dotfilesを実行してディレクトリ作成

② そのままls -laでホームディレクトリ配下にある設定ファイルを確認(lsaオプションつけないとドットで始まるファイルが見れない)

cpコマンドで持っていきたい設定ファイルを①で作ったディレクトリの配下に置く(私は①のディレクトリの下にさらにdotfilesディレクトリ作ってそこに置いている)

④(これは恐ければ)cp .bashrc .bashrc_bkとかでcpコマンドでバックアップを取っておく(まあやらなくても多分大丈夫。。)

⑤①のディレクトリ以下に設定ファイルを共有するためのスクリプトを作る。
私の場合link.shという名前でこんな感じで作成

link.sh
#!/bin/bashln-sf ~/dotfiles/dotfiles/.bash_profile ~/.bash_profile
ln-sf ~/dotfiles/dotfiles/.bashrc ~/.bashrc
ln-sf ~/dotfiles/dotfiles/.vimrc ~/.vimrc
ln-sf ~/dotfiles/dotfiles/.gitconfig ~/.gitconfig
ln-sf ~/dotfiles/dotfiles/.gitignore_global ~/.gitignore_global

cat<<EOS設定ファイルを置き換えました!!
.bash_profile
.bashrc
.vimrc
.gitconfig
.gitignore_global
EOS

bash link.shとコマンド実行して上のスクリプトを動かす

⑦ホームディレクトリ以下でls -laと実行してうまくいってたらこんな感じでリンクが貼られている
.vimrc -> /Users/ikegayayuuki/dotfiles/dotfiles/.vimrc

⑧うまくいってたらGithubでリポジトリ作ってそこにpush

こんな感じで面倒な設定を共有

.gitconfig
[alias]
st = status
cm = commit
co = checkout
br = branch
pl = pull
ps = push

リポジトリ作ってみて

上にも書きましたが、楽しい
設定ファイルいじるのがどういうわけか楽しくなってきます。viの使い方とか便利なaliasとか調べたくなってきますし、設定ファイルちゃんとすると地味に作業効率上がるので早めにやっとくのおすすめです。

もっとすごいdotfilesたち

とりあえず最初のうちはここに書いたくらいでいいかもですが、Githubのリポジトリで検索するとなにやらすごいのが色々出てきます。

特に設定ファイルのシンボリックリンク貼るとこはfor文で回したりansibleで配布したりの方がいいのかも??

あとはqiitaでもdotfilesのタグがあって調べると無限にやることがありそう。

参考
Githubに公開されてるDotfiesのガイド的なもの
https://dotfiles.github.io/
QiitaのDotfilesタグ
https://qiita.com/tags/dotfiles

私の作ったやつ
https://github.com/ikeyu0806/dotfiles


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>