列出所有Git没有提交的文件并创建它们的gzip存档
Hujiuxiang
・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
。