Vim 設定ファイルを github で管理する
Vimの設定を各環境で統一するために設定ファイルを github で管理する。
Google で "dotfiles" で検索すると大量に出てくる方法である。
方針
ファイル構成
ファイル構成は以下のようになる。
dotfiles/ +--vimfiles/ | +--bundle/ プラグイン管理用 | +--backup/ バックアップファイル保存先 | `--swp/ スワップファイル保存先 +--_vimrc `--_gvimrc
git 管理のための細かい事
無視設定
git管理したくないファイルのために .gitignore ファイルに以下を記載する
# bundle ディレクトリ以下のファイルを無視 vimfiles/bundle/ # バックアップ、スワップファイルを無視 .*~ *~ *.swp
空ディレクトリの管理
git は空のディレクトリを管理してくれない。
そのため、バックアップファイル保存先などの空ディレクトリを git 管理に追加する際は、そのディレクトリに空ファイルを置く。
私は .gitkeep というファイルを置いている。
シンボリックリンクの作成
dotfiles/ ディレクトリを ~/projects ディレクトリ以下にクローンした場合以下のようにシンボリックリンクを作成する。
Windows 7 環境の場合
- 管理者権限でコマンドプロンプトを開く
- [Windows]キーを押してスタートメニューを表示
- [プログラムとファイルの検索]に"cmd"と入力
- プログラム一覧に表示される "cmd.exe" にカーソルを移動させて[Ctrl]と[Shift]キーを同時に押しながら[Enter]キーを押す
- HOME ディレクトリへ移動する
- 環境変数 HOME を設定している場合以下のコマンドを入力
>cd %HOME%
-
- mklink コマンドでシンボリックリンクを作成
>mklink /D vimfiles projects\dotfiles\vimfiles
>mklink _vimrc projects\dotfiles\_vimrc
>mklink _gvimrc projects\dotfiles\_gvimrc
NeoBundle を取得
git submodule で登録している NeoBundle は dotfiles をクローンした時点では中身がないので、以下の手順で取得する必要がある。
$ cd dotfiles
$ git submodule init
$ git submodule update