.gitignore
仅忽略尚不属于存储库的文件。如果您已经git add
编辑了某些文件,仍然会跟踪它们的更改。
要从存储库(但不是从文件系统)中删除这些文件,请使用 git rm --cached
。
.gitignore
文件可确保 Git
未跟踪的文件保持不被跟踪。
仅将文件夹/文件添加到
.gitignore
文件不会取消对它们的跟踪 - 它们将继续由 Git
跟踪。
要取消跟踪文件,需要从存储库中删除
.gitignore
文件中列出的跟踪文件。然后重新添加它们并提交您的更改。
最简单、最彻底的方法是删除并缓存存储库中的所有文件,然后将它们全部添加回来。
.gitignore
文件中列出的所有文件夹/文件将不会被跟踪。从存储库的顶部文件夹运行以下命令:
git rm -r --cached .
git add .
然后提交您的更改:
git commit -m "Untrack files in .gitignore"
请注意,任何先前提交的不需要的文件都将保留在提交历史记录中。推送到 GitHub 时,请注意可能包含
.env
或 client_secret.json
文件的提交历史记录。
最佳实践是创建一个 .gitignore 文件并用启动项目时不希望跟踪的文件夹/文件填充它。但是,在意识到正在跟踪和存储不需要的文件后,通常有必要添加到
.gitignore
文件。
你可以用这个,
git rm -r --cached ./node_modules
例如,如果您想忽略node_modules
gitignore
仅忽略未跟踪的文件。您的文件被标记为已修改 - 这意味着它们是过去提交的,并且 git 现在会跟踪它们。
要忽略它们,您首先需要删除它们,
git rm
它们,提交然后忽略它们。
首先检查
.gitignore
编码。utf-8
。git rm --cached filename
取消跟踪不需要的文件
现在你的问题已经解决了😁
看看这个:.gitignore 不起作用 特别是 ADTC 的评论:
确保您的 .gitignore 文件使用 ANSI 或 UTF-8 编码。如果它使用 其他的东西,比如 Unicode BOM,Git 可能无法读取 文件。 – ADTC 2017 年 12 月 14 日 12:39
最好在开始时创建 .gitignore 文件并提及我们想要忽略的文件。 如果你想忽略某些文件,请执行 git
rm -r --cached
我遇到了同样的问题,然后我意识到我没有正确创建 .gitignore 文件。
就我而言,由于某种原因,我创建了一个 .gitignore.txt 文件。即使删除“.txt”后,Git 仍会跟踪 .gitignore 文件中的文件。扩展并保存。
尝试删除旧文件并通过终端中的
'touch .gitignore'
创建一个新的 .gitignore 文件,这为我解决了这个问题。
如果以上所有解决方案都不起作用,请尝试此方法。
要忽略的目标文件不应位于暂存区域中。请仔细检查。
用这个:
git update-index --assume-unchanged <filename>
For start tracking changes again run the following command:
git update-index --no-assume-unchanged <filename>
您可以使用这些命令:
git rm -r --cached .
git add .
git commit -m "fixed untracked files"
首先从 git 存储库中删除 index.lock 文件
rm -f .git/index.lock
然后添加.gitignore
git add .gitignore