gitignore does not ignore folder

2019-01-16 09:27发布

In the root of my project I have a foo folder. Inside the foo folder I have a bar folder. I would like to ignore all changes to all files inside my bar folder. I have this in my gitignore:

/foo/bar

The folder is checked: it exists and it has the files to be ignored. gitignore is committed. However, I have a file where I make a moification and is inside my bar folder. When I type

git status

inside my git bash I see the file which should have been ignored. What could be the reason and how can I successfully ignore all files inside my bar folder?

Note, that the files were previously ignored with the same line, but I had to temporarily remove that line to commit something on the server. After the commit, I put back the line into the gitignore. This was a while ago, but now I have observed that the files will be in git status. I would expect to be able to modify the ignored files without they appearing in the git status.

标签: git gitignore
3条回答
The star\"
2楼-- · 2019-01-16 10:10

For me, the accepted answer was part of the solution, not the entire solution. Maybe, the other steps that I'm about to post were obvious, but I missed them first. Here's the steps I took to ensure my .gitignore file ignored the folder I wanted it to ignore:

  1. Commit any changes that you need to fix/change.
  2. Run this command: git rm -r --cached . (which removes everything from the git index in order to refresh your git repository)
  3. Then run this command: git add . (to add everything back to the repo)
  4. Finally, commit these changes using git commit -m ".gitignore Fixed"

You can find the link to the article from where I found the solution here.

查看更多
Fickle 薄情
3楼-- · 2019-01-16 10:16

I was having this issue and I realized git was actually ignoring the files/folders correctly, but my code editor (Visual Studio Code) was just buggy and not "greying them out" properly in the UI sidebar. I restarted VSCode and they were greyed out as expected.

查看更多
Ridiculous、
4楼-- · 2019-01-16 10:27

I'm guessing this folder has been checked into git before?

Run git rm -r --cached <folder> and check again.

查看更多
登录 后发表回答