2013-04-24 85 views
10

我需要假设不变的标志来避免我的项目设置文件错误提交。我通过以下方式执行此操作:Git:列出所有具有假设不变标志的文件

git update-index --assume-unchanged <file> 

还有一种方法可以通过--no-assume-unchanged禁用此功能。

现在我以这种方式添加了5个文件,随后决定用counter-flag再次添加一些文件。

有没有办法列出所有声明为“承担 - 不变”的文件?

非常感谢!

+1

查看http://stackoverflow.com/questions/2363197/can-i-get-a-list-of-files-marked-assume-unchanged – Uncommon 2013-04-24 16:07:24

回答

13

可以使用较低级别的命令ls-files

% git ls-files -v 
h a.txt 
H b.txt 

如果第一个字符是小写的,它被标记为“假设不变”,在这种情况下a.txt。另请参阅man page of ls-files

+7

甚至更​​好:git ls-files -v | egrep -r“^ h。*”非常感谢! :) – 2013-04-24 16:46:01

+2

当然,这是为读者的练习:)。 – robinst 2013-04-24 16:53:30

1

git update-index手册页:

要查看哪些文件具有“假设不变”位设置,使用git LS-文件-v。

并根据git ls-files手册页:

-v

[...]使用小写字母标记为假设不变

所以文件为了使所有标记为假定的文件保持不变,使用:

ls-files -v | egrep -r "^[a-z] .*"