new*_*bie 5 linux svn git zip export
我正在使用Git进行版本控制,与SVN不同,我没有遇到过在2个版本,分支或标签之间执行已更改文件导出的固有方法.
作为替代方案,我想使用linux zip命令并传递一组文件名,但是文件名是另一个命令git diff的结果.下面是我想要实现的一个例子:
zip /home/myhome/releases/files.zip git diff --name-only -a 01-tag 00-tag
但是上面的方法不起作用,因为我猜'zip'命令将git操作视为其命令选项的一部分.
有人知道如何制作像上面这样的作品吗?
谢谢
您需要在子shell中执行git命令:
zip /home/myhome/releases/files.zip `git diff --name-only -a 01-tag 00-tag`
# another syntax (assuming bash):
zip /home/myhome/releases/files.zip $(git diff --name-only -a 01-tag 00-tag)
另一个选项是xargs命令:
git diff --name-only -a 01-tag 00-tag | xargs zip /home/myhome/releases/files.zip