Git 如何将索引中的缓存文件内容设置为任意内容

Git 如何将索引中的缓存文件内容设置为任意内容,git,Git,如何将路径索引中的缓存文件内容设置为任意内容,而不修改工作树中的文件?例如,我希望能够将some_file.xml的缓存文件内容设置为临时文件的内容,而无需更改some_file.xml的内容 这里的要点是,我编写了一个XSL样式表,用于从某些XML文件中删除敏感信息。我想编写一个脚本,用转换后的XML替换XML文件的缓存文件内容;i、 e.some_file.xml通过XSL转换为.some_file.xml.tmp,脚本应该使用.some_file.xml.tmp的内容更新some_file

如何将路径索引中的缓存文件内容设置为任意内容,而不修改工作树中的文件?例如,我希望能够将
some_file.xml
的缓存文件内容设置为临时文件的内容,而无需更改
some_file.xml
的内容


这里的要点是,我编写了一个XSL样式表,用于从某些XML文件中删除敏感信息。我想编写一个脚本,用转换后的XML替换XML文件的缓存文件内容;i、 e.
some_file.xml
通过XSL转换为
.some_file.xml.tmp
,脚本应该使用
.some_file.xml.tmp
的内容更新
some_file.xml
的索引,而不影响
some_file.xml
的内容。您可以使用
git hash object-t blob-w.some_file.xml.tmp
将临时文件的内容作为blob插入对象数据库。此blob的sha1在标准输出上返回。然后可以将此sha1与
git update index--index info
git update index--cacheinfo
一起使用