git取消跟踪已版本控制的文件

git 不再追踪文件改动 

git update-index --assume-unchanged filePath

git 恢复追踪文件改动 

git update-index —no-assume-unchanged filePath

git 删除被管理的文件 

#不会删除本地文件
git rm —-cached filePath

git 删除被管理的文件夹

git rm -r -f —-cached filePath

 

git把某个文件去除版本控制

首先说说 gitignore 文件的作用:

该文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件

因此,有时候我们一开始在上传项目的时候把某些不必要的文件也添加进了git的版本控制。此时 gitignore 对这些文件就不起作用了。因此我们要先从 git 里面把这些文件 untracked ,然后修改 gitignore ,最后提交。

具体操作:

从 Git 的数据库中删除对于该文件的追踪;

git rm -r --cached loggers  # -r 是允许递归删除,当要删除的是文件夹的时候有用


1
注意:这里 --cached 的意思是只去除版本控制而不删除本地文件,如果不写的话会把本地文件也删掉。所以要不要加 --cached 参数就看自己需要了。

修改 .gitignore, 把对应的规则写入 .gitignore,让忽略真正生效;

提交+推送。就是 add commit push 啦。

 

PS: 以上命令的执行可能需要在命令行中运行. 即如果你用的IDE自带Git, 你需要先关闭你的IDE, 然后再命令行中执行以上命令后, 再去打开你的IDE.

 

你可能感兴趣的:(git)