我暂时想要删除某些提交的文件并在一堆文件上运行git update-index --assume-unchanged file_name
。
然后我关闭了我的终端,无论如何回到我运行git update-index
命令的文件的名称,以便我可以在它们上运行--not-assume-unchanged
?
答案 0 :(得分:4)
为了进一步扩展Richard Michael的答案,你可以简单地在ls-files -v输出行的开头grep一个小写字母
git ls-files -v|grep ^[a-z]
将只显示您假设未更改的文件
答案 1 :(得分:3)
只需在树中的所有文件上运行它。默认情况下不假设不变。
为什么你首先运行它?如果要从提交中排除文件,只需手动git add
所需文件并运行git commit
。如果您将-a
标记传递给git commit
,则只会获得所有已修改的文件,因此请不要这样做。
答案 2 :(得分:3)
注意,我使用的是git --version
1.8.1.2。
您可以使用git ls-files -v
确定索引中文件的位数。设置为assume-unchanged
位的文件具有小写标记。
请勿将此标记与S
标记混淆,后者与skip-worktree
位对应(如果文件 <{}},该标记将显示为s
{1}}位设置)。
在assume-unchanged
和git help update-index
选项部分中查看-t
以及有关代码本身的讨论。
例如:-v
有Gemfile
设置,我们还会设置skip-worktree
。
assume-unchanged