gitを使用していてgitの管理対象外にしたい時に使用する「.gitignore」ですが、
リモートリポジトリには管理したくないという事がありました。
例えば、エディタによっては設定ファイルなどが生成される場合があるが、他の人には関係ないのでリモートでは管理したくない、などでしょうか。
そういう時の対応方法をメモします。
gitignoreファイル自体を無視する方法
普通にgitignoreファイルを作る
普通にファイルを作って git status をすると、以下のようにトラッキング対象になります。
On branch master No commits yet Untracked files: (use "git add <file>..." to include in what will be committed) .gitignore nothing added to commit but untracked files present (use "git add" to track)
gitignoreファイルを対象外にする
対象のリポジトリのルートの .git/info/exclude にトラッキング対象から除外するファイルを記述します。
これは、GitHubによるGitの説明をみるとわかりやすいです。
修正前の .git/info/exclude
# git ls-files --others --exclude-from=.git/info/exclude # Lines that start with '#' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if you want to use them): # *.[oa] # *~
以下のように追記します。
修正後の .git/info/exclude
# git ls-files --others --exclude-from=.git/info/exclude # Lines that start with '#' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if you want to use them): # *.[oa] # *~ .gitignore
最終行に追記しました。
これで .gitignore が対象外になります。