git archive 打包文件
Git 中打包文件是个简单的活,不管是打包全部文件作为 release,
还是只压缩更改的文件,一个命令就能搞定。
而且,打包之后目录结构完全不变,这对于覆盖部署来说极其方便。
1 打包所有文件
打包master
分支的所有文件:
注:本地修改未提交的并不会打包进去
1 |
|
其中,输出格式为zip
,输出文件为master.zip
。git 支持 zip 和 tar 两种输出格式。
打包当前分支当前HEAD
的所有文件:
1 |
|
打包v1.2
标签的所有文件:
1 |
|
2 打包更改的文件
打包更改文件的原理是:
- 用
git diff
找出文件列表; - 用打包命令打包。
也就是说,只要能用找出文件列表,就可以 git 打包出来。
2.1 打包最后修改的文件
先通过git diff
找到最新版本修改过的文件,再压缩打包这些文件:
1 |
|
2.2 打包最后两个版本修改的文件
总共也是 2 个版本:
1 |
|
2.3 打包两个分支之间差别的文件
1 |
|
如上,打包master
和fix-error
分支差异的文件。
参考资料:
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!