読者です 読者をやめる 読者になる 読者になる

よいちろ日記

忘れないようにメモ。

gitignoreを整理して、dotfilesをgit管理した。

今までほったらかしだったが、新しいパソコンにして、同期したかったので重い腰をあげた。
 
特に、Unity、Xcodeの余分なファイルをどう取り除くか、Unityでくっそ重いファイルができてて、Git Large File Storage使うのとかめんどいな、と思っていた。


まず、くっそ重いUnityのファイルはduしてみたら、iOS用のビルドファイルだったことが判明。
こいつはUnityからいつでもビルドできるので、git管理しなくていい。
 
次に、Unity、Xcodeのライブラリファイルとか、ログファイルとか、一個一個見ていくの面倒だな問題。(本当はそうするべきなんだろうけど、そんなレベルに達していない。)
 
最近はそれも自動で生成してくれるgiboというものがあるようだ。githubで有志が管理している.gitignoreをコマンドから利用できるようになるCUIツール。

 

なので、方針としては、
「汎用的な.DS_Storeなどのファイルは.gitignore_globalでPC全体で管理。」
IDE依存のものはgiboで生成した.gitignoreをプロジェクトごとに管理。」
というようにした。
 
せっかくなので、dotfiles全般をgit管理することにした。


大まかな構造は、
・ホームディレクトリにdotfilesのシンボリックリンクを作成。(するスクリプトを拝借した。)
・対応する実ファイルをdotfilesディレクトリ(ホームディレクトリ配下)に配置。
・dotfilesディレクトリをgit管理。
という感じ。
 
対象のdotfilesが増えるたびに、setup.shに追加し、シェルスクリプトを実行するのが若干手間。

 
最初相対パスじゃなくて絶対パスで.gitignore_globalを.gitconfig内で指定していて、ミスって、.DS_Storeが上がってしまった。それは、

git rm -r --cached .DS_Store 

ってして、上げ直すと適用される。
.gitignore適用したいファイルが多いときは、

git rm -r —cached . 

で全部やり直しても良い。


f:id:yoichiro0903:20160919163031p:plain

f:id:yoichiro0903:20160919163040p:plain