我刚刚在我的新项目的根上做了一个git初始化。
然后我创建了一个.gitignore文件。
现在,当我输入git status时,.gitignore文件出现在未跟踪文件列表中。为什么呢?
我刚刚在我的新项目的根上做了一个git初始化。
然后我创建了一个.gitignore文件。
现在,当我输入git status时,.gitignore文件出现在未跟踪文件列表中。为什么呢?
当前回答
添加.gitignore文件并提交后,它将不再显示在“未跟踪文件”列表中。
git add .gitignore
git commit -m "add .gitignore file"
git status
其他回答
.gitignore文件应该在您的存储库中,因此它确实应该被添加和提交,正如git状态所建议的那样。它必须是存储库树的一部分,这样对它的更改就可以合并等等。
因此,将它添加到您的存储库中,它不应该被忽略。
如果你真的想要,你可以添加.gitignore到.gitignore文件,如果你不想让它被提交。然而,在这种情况下,最好将忽略添加到.git/info/exclude中,这是一个特殊的本地签出文件,它的工作方式就像.gitignore,但不会显示在“git状态”中,因为它在.git文件夹中。
参见https://help.github.com/articles/ignoring-files
添加.gitignore文件并提交后,它将不再显示在“未跟踪文件”列表中。
git add .gitignore
git commit -m "add .gitignore file"
git status
我发现忽略烦人的. ds_store文件的最佳位置是在.git/info/exclude文件中。
当您在IntelliJ中设置git存储库时,它似乎会自动执行此操作。
.gitignore是关于忽略其他文件。Git是关于文件的,所以这是关于忽略文件的。然而,当git处理文件时,这个文件需要作为列出其他文件名的机制。
如果它被称为.the_list_of_ignored_files,可能会更明显一些。
一个类比是你不想做的待办事项列表。除非你把它们列在某种“待办事项”清单上,否则你不会知道它们。
如果你已经签入了.gitignore,并且你想忽略对它的修改,看看这个答案:
尝试使用这个命令: git update-index——assume-unchanged FILENAME_TO_IGNORE 要反转它(如果你想提交更改),使用: Git update-index——no-assume-unchanged 更新: 下面是如何列出“假定不变”文件在当前 目录: git ls-files -v | grep -E "^[a-z]" 因为-v选项会用小写字母表示" assume unchanged " 文件。