我开始使用git对二进制文件(.ai和.indd)进行版本控制。我想知道如何导出其中一个文件(或整个存储库)的每个提交,这样之后我就可以有一个图像序列,可以用来制作这样的视频moxie doxy,它是由保存为typeface(n),typeface(n++)…的文件制成的。
所以我猜我想要实现的东西是这样的:
Git归档-o导出iterateOverAllCommits EXPORTS_TO (第一次提交)Archive0001.zip,(第二次提交)Archive0002.zip…
在此之后,展开/准备视频文件就不成问题了。
发布于 2013-01-26 07:10:40
通过将git archive和git rev-list与小bash结合起来,您可以做到这一点。
COUNT=0
for commit in `git rev-list --reverse HEAD`; do
git archive $commit --format=zip -o archive$COUNT.zip
COUNT=$((COUNT + 1))
donegit rev-list --reverse HEAD打印出从第一次提交到HEAD结束的commit散列。
git archive $commit --format=zip -o archive$COUNT.zip创建由来自rev-list的提交散列指定的提交的压缩存档。
rev-list和archive都有很多选项,可以帮助您进一步改进归档,使其只包含您需要的信息。
Using printf你可以很容易的修改上面的代码来填充计数。
https://stackoverflow.com/questions/14531226
复制相似问题