Git导出两个版本之间的差异文件并打包发布服务器

Git导出两个版本之间的差异文件并打包发布服务器


1.查看版本

 $ git log --pretty=oneline

2.差异文件并打包

发布代码的时候可以通过以下命令,导出最后一次提交修改过的文件,导出从其他分支合并过来的代码

git archive -o ../update.zip HEAD $(git diff --name-only HEAD^)


如果需要发布几个git版本的代码,可以通过以下命令导出指定提交id之间修改的文件

git archive -o ../update.zip NEW_COMMIT_ID_HERE $(git diff --name-only OLD_COMMIT_ID_HERE NEW_COMMIT_ID_HERE)

或者(推荐),linux有提供一个命令xargs能将前一个命令的输出转成另外一个命令的参数,按照这个思路就可以用如下命令。

git diff --name-only OLD_COMMIT_ID_HERE  NEW_COMMIT_ID_HERE | xargs tar -zcvf ../update.tar.gz
git diff --name-only OLD_COMMIT_ID_HERE  NEW_COMMIT_ID_HERE| xargs zip update.zip

OLD_COMMIT_ID_HERE  这个是老的版本号

NEW_COMMIT_ID_HERE  这个是要发不到那个版本的版本号

 

你可能感兴趣的:(git)