我可以得到标记为-假定不变的文件列表吗?

我标记--assume-unchanged为什么?有什么办法可以找出我使用该选项所藏的东西吗?

我翻遍了.git/目录,看不到任何看起来像我期望的东西,但它一定在某个地方。我已经忘记了几周前以这种方式标记的内容,现在我需要为以后的开发人员记录这些详细信息。


米琪卡哇伊
浏览 466回答 3
3回答

FFIVE

您可以使用git ls-files -v。如果打印的字符是小写字母,则文件被标记为假定不变。要仅打印未更改的文件,请使用:git ls-files -v | grep '^[[:lower:]]'要拥抱您的懒惰程序员,请将其变成git别名。编辑.gitconfig文件以添加以下代码段:[alias]    ignored = !git ls-files -v | grep "^[[:lower:]]"现在键入git ignored将为您提供如下输出:h path/to/ignored.fileh another/ignored.file

慕工程0101907

一线git ls-files -v | grep "^[a-z]"使用别名恕我直言,git hidden最好标记为的文件--assume-unchanged:git config --global alias.hidden '!git ls-files -v | grep "^[a-z]"'这是我拥有的相关别名的列表~/.gitconfig:[alias]  hide = update-index --assume-unchanged  unhide = update-index --no-assume-unchanged  unhide-all = update-index --really-refresh  hidden = !git ls-files -v | grep \"^[a-z]\"  ignored = !git status -s --ignored | grep \"^!!\"要使其在子目录和支持参数中起作用:  hidden = "!f(){ git -C \"$GIT_PREFIX\" ls-files -v \"$@\" | grep \"^[a-z]\";}; f"  ignored = "!f(){ git -C \"$GIT_PREFIX\" status -s --ignored \"$@\" | grep \"^!!\";}; f"例如: # cd target # git ignored classes关于文件状态对我来说,大多数隐藏文件都用flag标记h,尽管根据以下手册,实际上还有其他几个标记git-ls-files-v:-v    Similar to -t, but use lowercase letters for files that are marked as assume unchanged (see git-update-index(1)).关于git ls-files-t:This option (-t) identifies the file status with the following tags (followed by a space) at the start of each line:H   cachedS   skip-worktreeM   unmergedR   removed/deletedC   modified/changedK   to be killed?   other

Cats萌萌

这个命令对我来说更加一致。它将仅打印列为“假定未更改”的文件。git ls-files -v|grep "^h"我已经在不同的环境中使用了很多次,并且效果很好。
打开App,查看更多内容
随时随地看视频慕课网APP