两种形式 assume-unchanged 和 skip-worktree
-
增加本地疏忽
git update-index --assume-unchanged【文件门路】git update-index --skip-worktree【文件门路】
-
移除本地疏忽(复原跟踪)
git update-index --no-assume-unchanged vue.config.js git update-index --no-skip-worktree vue.config.js
3.git ls-files - v 查看文件列表,小写 h 结尾是 assume-unchanged, 大写 S 是 skip-worktree。
文件标识 | 形容 |
---|---|
H | 缓存,失常跟踪文件 |
S | skip-worktree 文件 |
h | assume-unchanged 文件 |
M | unmerged, 未合并 |
R | removed/deleted |
C | modified/changed 批改 |
K | to be killed |
? | other,疏忽文件 |
cmd 查问本地疏忽
git ls-files -v |find /V "H"
linux 查询方法git ls-files -v | grep '^h\'
这两个参数区别:
1.assume-unchanged 假设不变。
这个会敞开文件与近程仓库的跟踪,认为这个文件近程仓库是不会批改,所以每次 pull 都是本地的文件
2.skip-worktree 跳过工作树
这个不会敞开文件与近程仓库的跟踪,只是通知 Git 不要跟踪对本地文件 / 文件夹的更改,每次 pull 时会拉取最新的变动, 会提醒抵触,但因为没有跟踪本地更改,所以须要 no-skip-worktree 再合并最新的变动
所以,最合适的其实是 skip-worktree,因为它还在跟踪近程库的批改。
另:.git/info/exclude:这个会删除近程仓库疏忽文件,保留本地文件