メインの開発環境は tmux+zsh+vim
自宅・会社・開発サーバ等々で、設定を共有するために
行っていること。
備忘録をかねた個人用メモなので
こまかいことは自分で調べてくださいXD
何か要望があれば詳細追記します
dotfilesをgithubまたはbitbucketで管理する。
基本的には、ネットワークさえつながれば
いつでも同じ開発環境を構築できる状態であればよい。
Dropboxとかに保存するでもよいけど、バージョン管理できないし
リモートサーバー上に設置するのが面倒なのでgithub等がベスト
自分は、プライベートリポジトリを作れるという点でbitbucketを利用中。
設定ファイルをまとめたdotfilesフォルダを用意する。
自分の場合は以下のような感じ。
これを丸まるgithubに突っ込む
一部、リポジトリを別にもつディレクトリもあるんだけど。
./
|-- .gvimrc
|-- .tmux.conf
|-- .vimrc
|-- .zshrc
|-- formac
| `-- key4remap
| `-- private.xml
|-- setup.sh
|-- vimfiles
| |-- bundle
| |-- template
| `-- vundle.git
|-- vimrc
`-- zsh
各ファイル・ディレクトリの意味
.gvimrc
MacVim(Mac機), Gvim(Win機)でvimアプリを利用する際の
設定情報を記述する。基本は.vimrcに記載してあるので
主にGUI専用の内容を記述。
.tmux.conf
tmux用の設定をまとめておく
.vimrc
vim用の設定をまとめておく
vimのインストール方法はこちらを参照
プラグイン等の関係からvimは7.3以上を利用している。
.zshrc
補完関係の設定やプロンプトの変更など。
formac
mac機ではKey4Remapアプリを利用してキーバインドを
独自にXMLで定義しており、それをここで管理している。
setup.sh
dotfilesディレクトリを新規にgit clone した際に、
必要ディレクトリの生成や、シンボリックリンク作成用の
シェルスクリプト。
vimefiles
自前で管理しているdotfilesとは別にリポジトリをもつ
ファイルの管理。またはvimのプラグイン等もここでセット
vimfiles/bundle
vimのプラグインをインストールした際は、ここに格納される。
.gitignoreの対象
vimfiles/vundle.git
bundle管理
vimefiles/template
新規ファイル作成時に利用するテンプレートを格納
.plファイルの場合は、必要なモジュールをuseしておくetc
vimrc
.vimrc内で読み込んでいるdotfiles
.vimrc.bundle, .vimrc.unite といった感じで
任意の粒度にわけている。
zsh
自動補完用の auto-fu.zsh をサブモジュールとして管理している。
dotfilesをまとめる
自分の場合は上述のような感じだけど
まーそこは人によって様々だとおもうので
適当にちゃちゃっっとつくっちゃえばいいとおもいます。
bitbucketまたはgithubの使い方はgoogle御大が教えてくれるはず
gitモジュール管理
基本的には作成したdotfilesのディレクトリを
githubまたはbitbucketにアップロードすればOK
すこしトリッキーなのはgit submoduleを使っているところ
サブモジュールとは、簡単にいうとブランチ内で他の
リポジトリのブランチを利用すること
自分の場合は、自分のbitbucketブランチで
vim用のプラグイン管理とzsh用の補完モジュールなんかを登録してる。
コマンドは以下のようなかんじ。
# gitのプラグイン管理
# git add submodule $remote_path $install_pathといった形式
git add submodule http://github.com/gmarik/vundle.git .vimfiles/vundle.git
bitbucketからdotfilesをダウンロードする。
リポジトリ管理の準備ができてからは以下のように
開発環境で展開する。いくら環境がふえようと
以下のコマンドをうつだけで準備は整う。
※別途viでのバンドルインストールなどは必要。
$ cd ~/
# これでdotfilesディレクトリが~/以下に作成される。
$ git clone https://kinef@bitbucket.org/kinef/dotfiles.git
# dotfilesディレクトリに移動
$ cd dotfiles/
# サブモジュールをインストールする。
$ git submodule init
$ git submodule update
# 必要ディレクトリとリンクを作成
$ ./setup.sh