我可以告诉git忽略被修改(删除)但不应该提交的文件吗?

这种情况是,我在repo中有一个子目录,其中包含我根本不感兴趣的东西,所以我删除了它,以防止它出现在自动补全等(在IDE中)。

但是现在,如果我把这个文件夹添加到。gitignore,什么都没有改变,所有的东西都显示为已删除的git状态。

有没有一种方法可以让git忽略它?

(或者,当我使用git-svn时,我可以将更改提交到本地git并确保它们不会传递到svn repo吗?)


当前回答

被跟踪的文件不能被忽略,因此必须首先将它们从索引中删除。添加一个.gitignore来忽略你不想要的目录,然后删除它们,并使用git rm——cached删除任何掉线者。

其他回答

查看git-update-index手册页和——assume-unchanged位。

当我遇到你的问题时,我会这样做

git update-index --assume-unchanged dir-im-removing/

或者一个特定的文件

git update-index --assume-unchanged config/database.yml

被跟踪的文件不能被忽略,因此必须首先将它们从索引中删除。添加一个.gitignore来忽略你不想要的目录,然后删除它们,并使用git rm——cached删除任何掉线者。

我的情况是:

Git恢复——暂存的文件名

示例:git restore——staging index.js

使用这段代码

git update-index --assume-unchanged file-name

我通常做的是

git stash

git whatever-else

git stash apply

git stash clear