Nullyのぶろぐ

仙台から東京へ転勤したエンジニアのブログ

Gitで指定したファイルを管理下から外す

最近ジャンルが定まっていない投稿ばかりですみません...orz

覚書としてGitを使ってて特定のファイルを管理下から外すメモ。

Gitって?

Gitは分散型バージョン管理システムです。

もともとLinuxカーネルのバージョン管理を行うためにリーナス・トーバルズ氏によって開発されました。

詳しくはWikiあたりを。

ファイルを管理下から外す

コミット後もコミット前も同じコマンドで管理下から外すことができます。

例えばテストディレクトリや、キャッシュファイルがごっそり置かれるようなディレクトリやファイルはバージョン管理下に置きたくありません。

で、間違って git add してしまった!なんて場合、add したことをなかった事にしなければなりません。

そんな場合は

git rm --cached [ファイル名]

を実行。

[ファイル名]の部分は存在するファイル名で。

全てのファイルを対象としたいならカレントディレクトリ(.)などで指定します。

# キャッシュディレクトリを管理下から外す場合

git rm --cached cache/

.gitignoreで除外リストを作成

Subversion等でもある除外リストをGitで作成するには、.gitignoreファイルに除外リストを作成。

このファイルにはワイルドカードなどを利用できるので、細かく指定することが可能です。

$ vi .gitignore

# 以下を追加

cache/

こんな感じで記述することで、除外リストを作成することが出来ます。

終りに

Gitは最近熱くなってきていてGithubなどのオンラインリポジトリも増えてきています。

まだSubversionの人気も高く、どのバージョン管理がいいの!というのは社内や個人のプロジェクト範囲で決めてください。

個人的にはGitを覚えたかったというのがあるのでGitを使っています。