git 忽略文件
git命令
本地的数据库和测试环境的数据库配置不同,项目开发中每次提交的过程中忽略着写数据库配置文件(不提交)。
git update-index --assume-unchanged 文件路径[文件名]
//这样忽略相应的文件
//这种方式比较繁杂,但是推荐这种,因为下边的一种实际似乎用不到
恢复跟踪
git update-index --no-assume-unchanged 文件路径[文件名] //恢复跟踪
如果忽略的文件多了,可以使用以下命令查看忽略列表
git uls-files -v | grep '^h\ '
提取文件路径,方法如下
git ls-files -v | grep '^h\ ' | awk '{print $2}'
所有被忽略的文件,取消忽略的方法,如下
git ls-files -v | grep '^h' | awk '{print $2}' |xargs git update-index --no-assume-unchanged
https://www.cnblogs.com/wt645631686/p/10007328.html?ivk_sa=1024320u
.ignore文件的缺点
.gitignore文件的忽略规则:
在项目开发中,我们都会添加 .gitignore 文件,比如IDEA的.idea目录、target目录等,但有时会发现,配置后并不生效。
原因是: .gitignore 只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交。
删除缓存后提交存在的问题:提交后,被忽略的文件在远端仓库被删除了,就丢失了该版本对应文件管理!
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
配置.gitignore文件后,执行以上命令(可以看到delete mode 100644 1.php的提示信息),提交后查看远端仓库,远端仓库的1.php就不见了,如下图。 删除.gitignore文件后,再次提交,对应的create mode 100644 1.php的提示信息如下图。
推送到远端:
1.php文件出现,之前是被删除了的
git status //查看本地可以add的文件
|