列出所有Git没有提交的文件并创建它们的gzip存档

・1 分钟阅读

 $ GITFOLDER="/srv/some/folder" ls-files --others --exclude-standard | tar czf ${GITFOLDER}-archives/uploads-$(date '+%Y%m%d%H%M').tar.gz -T -

说明

假设你的网络应用程序有一个git checkout在/srv/some/文件夹中(即/srv/some/folder/.git ),一行就可以将用户文件打包到/srv/some/folder-archives上。

使用:


cd /srv/some/folder
# this one-liner

限制

完整的脚本将:

  • 检查$GITFOLDER是否存在
  • 检查$GITFOLDER有没有.git目录
  • 创建一个临时(e.g ,tmp=$(mktemp) )文件以记录任何 if ["$?" -ne 0 ] ; 退出状态exit 1,否则删除$tmp文件和exit 0
Hujiuxiang profile image