Git is not using the contents of .gitignore
I’m working with Rails and added the directory tmp and the Gemfile to my .gitignore. But every time I change i开发者_JS百科t, git status
tells me, that it changed. On both machines. On my developer machine and on the server. Kind of annoying.
Contents of .gitignore
:
.DS_Store
data/export/*.csv
tmp/*
*.rbc
*.sassc
.sass-cache
capybara-*.html
.rspec
/.bundle
/vendor/bundle
/log/*
/tmp/*
/db/*.sqlite3
/public/system/*
/coverage/
/spec/tmp/*
**.orig
config/*.yml
rerun.txt
pickle-email-*.html
Gemfile*
It could be that git is already tracking the files. Try git rm
ing them:
git rm --cached Gemfile
(although you probably should have the Gemfile under version control)
and for the tmp dir:
git rm -r --cached tmp
the --cached
is so that the working file will not be deleted, and -r
is to recursively remove from a directory.
After this git should respect .gitignore
.
If your tmp and GemFile directories are already versioned, Git will not ignore them.
Either unversion them, by doing something like:
git rm -r --cached tmp
git commit -am "removing tmp"
( --cached so that they will remain in your working directory)
, or ignore that they are not ignored ( :) ) or do something like:
git update-index --assume-unchanged tmp/**
The above command "temporarily ignores" the changes to the folders that are already versioned.
精彩评论