如果我将暂存或提交的文件放到.gitignore会发生什么?

时间:2015-12-27 14:36:47

标签: git

如果我将跟踪文件(可以修改,暂存或提交)放到.gitignore,那么如果我再运行其他git命令会发生什么(git rmgit mv除外我刚放入.gitignore的文件,例如,

  • git add -u .git add -A .git add .

  • git commit

  • git pushgit pull

  • ...

我想知道将跟踪(已修改,暂存或已提交)加入.gitignore是否会产生与git rm类似的结果?

请参阅我对前一个问题的回复的评论。 https://stackoverflow.com/a/29303952/156458

2 个答案:

答案 0 :(得分:4)

只需将文件添加到.gitignore即可忽略暂存区域中的文件。

将文件添加到.gitignore确保Git未跟踪的某些文件未被跟踪”。您应首先git rm --cached要忽略的文件:

git rm --cached file

然后他们将被.gitignore“考虑”。请参阅Ignoring files

  

如果您已经签入了文件,并且想要忽略它,那么如果稍后添加规则,Git将不会忽略该文件。在这些情况下,您必须首先在终端中运行以下命令来解除文件:

答案 1 :(得分:0)

当您将提交的文件放在.gitignore中时,只要这些文件有任何更改,它们就会显示为已修改。我们不希望这样做,因为无论我们将文件放在.gitignore内如何,这些文件都不应转到GitHub或任何其他版本控制系统。要解决此问题,您需要从git缓存中删除这些文件,然后在看到git status时,这些文件将不会显示为已修改。

要从git cache中删除文件,请使用-

git rm --cached file