Git 一键生成补丁 old folder new folder update.path

来源:互联网 发布:即时通讯办公软件 编辑:程序博客网 时间:2024/06/15 18:03

Git 一键生成补丁 old folder new folder update.path
原理很简单,看下面脚本,使用也很简单

$ git logcommit 75df2c656ba0ff4654515922f1d26c102577c9e6Author: DevinLow <gang_liu1987@163.com>Date:   Thu Sep 29 15:21:39 2016 +0800    usb 去抖commit e46d98b2818121b3639bc8a6cab0258581c513aaAuthor: DevinLow <gang_liu1987@163.com>Date:   Thu Sep 29 15:01:09 2016 +0800    init project$./gitdiff.sh  e46d98b28181...   75df2c656ba..... Archive:  new.zip75df2c656ba0ff4654515922f1d26c102577c9e6   creating: ./new/mediatek/   creating: ./new/mediatek/kernel/   creating: ./new/mediatek/kernel/drivers/   creating: ./new/mediatek/kernel/drivers/usb20/  inflating: ./new/mediatek/kernel/drivers/usb20/musb_core.c  Archive:  old.zipe46d98b2818121b3639bc8a6cab0258581c513aa   creating: ./old/mediatek/   creating: ./old/mediatek/kernel/   creating: ./old/mediatek/kernel/drivers/   creating: ./old/mediatek/kernel/drivers/usb20/  inflating: ./old/mediatek/kernel/drivers/usb20/musb_core.c  liugang@ospicon-ubuntu:~/8127_mlc_kk$ 在上一层的目录中就会生成 update目录$ ls  ../update/ -lls: 初始化月份字符串出错总用量 12drwxrwxr-x 3 liugang liugang 4096  99 18:55 newdrwxrwxr-x 3 liugang liugang 4096  99 18:55 old-rw-rw-r-- 1 liugang liugang 1031  99 18:55 update.path
#!/bin/bashtargetfolder=../updatetargetname=update.zipif [ $# != 2 ] ; then        echo "USAGE: $0 OLD_ID NEW_ID"         exit 1;fimkdir -p $targetfoldergit diff $1 $2 >../update/update.pathgit archive -o ../update/new.zip $2 $(git diff --name-only $1 $2)  #新版本的差异文件git archive -o ../update/old.zip $1 $(git diff --name-only $2 $1)  #旧版本的差异文件cd ../updateunzip -o -d ./new/ new.zipunzip -o -d ./old/ old.ziprm new.zip old.zip
0 0
原创粉丝点击