git从版本控制中删除文件及.gitignore的用法

刚开始用git的时候,喜欢用git添加*把所有文件都加入到版本管理中。

后来发现,因为我在virtualenv下面创建的内容,在跑测试的时候,会产生__pycache__文件夹,里面的很多东西都不需要纳入版本管理中,于是就想把它删掉。

一般来说,用的是git rm命令,比如

git rm - r __pycache__

但是它会直接删掉硬盘上的文件,我们可以加上- n参数查看他会删掉哪些文件。

(.venv) [root@wbvalid SocialMatrix] # git rm - r - n baseclass __pycache__/

rm的baseclass/__pycache__ world.cpython - 36. -佩克”

比如结果如上所示。

那么如果我想保留硬盘上的这个文件,而只删除版本管理中的文件,就需要加入——缓存参数。

(.venv) [root@wbvalid SocialMatrix] # git rm - r——缓存baseclass __pycache__/

这样,版本管理中的__pycache__文件夹就被删除了。后续想要排除这个文件夹,只需要在.文件存在的目录下添加一个。gitignore文件,让git添加的时候跳过这个文件夹即可。

(.venv) [root@wbvalid SocialMatrix] #猫.gitignore

#跳过.venv

。venv/

#跳过*/__pycache__

*/__pycache__

这样就可以不用担心把这些缓存文件加入版本管理啦。

git从版本控制中删除文件及.gitignore的用法