Git is ignoring .idea folder, but that isn't in gitignore

前端 未结 3 862
长发绾君心
长发绾君心 2020-12-11 17:58

The problem:

I\'m on OSX. I have a very small .gitignore file, and I even tried completely deleting the file. Nothing helps. Git doesn\'t see anything under my .id

相关标签:
3条回答
  • 2020-12-11 18:39

    Do you have ~/.gitignore file? Here is the information that may be helpful.

    Git has a very flexible hierarchy of ignore files: First it reads .gitignore file in your home directory. Put here common data for all repos (*.bak, for example, you definitely do not need them in any repo). Then, you can have .gitignore file in any folder inside your repo. It impacts on any files in this folder and its subdirectories. Also, you can have excludes in .git/info/exclude. It differs from .gitignore because it is not indexed, and you can put personal settings here. Of course ~/.gitignore is not indexed too.

    0 讨论(0)
  • 2020-12-11 18:55

    I had the same problem. In my .git/exclude/info file, I exclude the names of executables that are created. But I often use the same name for the directories in which these executables reside, e.g. the "sphere" directory contains the executable "sphere". Since I had added all of the files before excluding the executable names in info/exclude, the fatal error never kicked in, even after excluding the directory/executable name to info/exclude.

    Recently, however, I tried to add a file from a directory whose name was already excluded (because it matched the name of an executable I was excluding). The fatal error kicked in, and I was confused. I forced the add, and now any subsequent adds ignore the fatal error.

    What this suggests is that it makes sense to exclude executable names in local .gitignore files, rather than in info/exclude.

    0 讨论(0)
  • 2020-12-11 18:57

    If using the -f flag doesn't make any difference (i.e. the file still doesn't get staged), double check that the thing you're trying to add isn't already in the repository.

    In my case I was trying to add something that had already been added and then deleted on a different branch, leading me to incorrectly think it had never been added in the first place. And Git was quite reasonably refusing to add the same thing twice.

    0 讨论(0)
提交回复
热议问题