2011-01-08 94 views
2

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

这就是我写了一个XSL样式表,用于从某些XML文件中删除敏感信息。我想编写一个脚本,它可以用转换的XML替换XML文件的缓存文件内容;即some_file.xml用XSL转换为.some_file.xml.tmp,脚本应更新some_file.xml的索引,其内容为.some_file.xml.tmp而不影响some_file.xml的内容。

回答

2

您可以使用git hash-object -t blob -w .some_file.xml.tmp将临时文件的内容作为blob插入到对象数据库中。这个blob的sha1在stdout上返回。然后您可以使用这个sha1与git update-index --index-infogit update-index --cacheinfo

+0

这是完美的!谢谢。 – 2011-01-09 00:05:40