Git 忽略文件
从未提交过的文件可以用.gitignore
该文件只能作用于未跟踪(从未提交)的文件(Untracked Files),也就是那些从来没有被 git 记录过的文件
.idea vendor/* */upload/ */upload_tmp/ src/log/* */ali/ */local/ */qiniu/ src/examples/ src/*/config.php
已经推送(push)过的文件,想从git远程库中删除,并在以后的提交中忽略,但是却还想在本地保留这个文件
git rm --cached Xml/config.xml
后面的 Xml/config.xml 是要从远程库中删除的文件的路径,支持通配符*。比如,不小心提交到git上的一些log日志文件,想从远程库删除,可以用这个命令
已经推送(push)过的文件,想在以后的提交时忽略此文件,即使本地已经修改过,而且不删除git远程库
git update-index –assume-unchanged –path //可以忽略文件 git update-index –no-assume-unchanged –path //可以取消忽略文件
//后面的 Xml/config.xml 是要忽略的文件的路径 git update-index --assume-unchanged Xml/config.xml // 如果要忽略一个目录,打开 git bash,cd到 目标目录下,执行: git update-index --assume-unchanged $(git ls-files | tr '\n' ' ')
例如config.php,第一次提交后以后不需要提交。
但是忽略的文件多了,想找出所有被忽略的文件,暂时找到下面的办法
// 查看忽略文件 git ls-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
官网文件:.gitignore