git archive
将文件路径作为参数,因此您可以执行以下操作:
git diff --name-status commit1 commit2 | awk '{ if ($1 != "D") print $2 }' | xargs git archive -o output.zip HEAD
UPDATE
如果您的文件名包含空格,则以下操作将起作用:
git diff --name-status commit1 commit2 | awk '{ if ($1 != "D") printf("\"%s\"\n", substr($0,3)) }' | xargs git archive -o output.zip HEAD --
注意:存档中包含的文件内容是 HEAD 处的内容。要使用其他提交的内容,只需更改HEAD
在此命令的末尾添加到您想要的任何内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)