如何查找两个符合PROD格式的最新Git标签间的所有提交?
用Git命令快速查看生产部署的变更内容
查看当前部署(指定prod标签)包含的所有提交
如果想知道prod/0.1.123这个部署版本包含哪些提交记录,直接用git log命令搭配--oneline参数即可获得简洁的输出:
git log --oneline prod/0.1.123
该命令会列出从仓库初始提交到目标标签的所有提交,每条记录仅显示简短哈希值和提交说明。
对比当前部署与上一次部署的变更
要找出prod/0.1.123和上一个生产版本的差异,可通过以下组合命令实现:
git diff --stat $(git describe --abbrev=0 --match='prod/*' prod/0.1.123^) prod/0.1.123
git describe --abbrev=0 --match='prod/*' prod/0.1.123^:自动定位prod/0.1.123之前最近的一个prod格式标签--stat参数会展示文件变更统计信息(如修改的文件列表、新增/删除行数),若需查看具体代码改动,去掉--stat即可:
git diff $(git describe --abbrev=0 --match='prod/*' prod/0.1.123^) prod/0.1.123
如果你的prod标签是严格按版本号递增命名(比如prod/0.1.122、prod/0.1.123),也可以直接指定两个标签对比:
git diff --stat prod/0.1.122 prod/0.1.123
一键查看当前线上版本的变更
若想直接查看当前最新生产版本与上一版本的差异,可先获取最新prod标签再对比:
latest_prod=$(git describe --abbrev=0 --match='prod/*') prev_prod=$(git describe --abbrev=0 --match='prod/*' $latest_prod^) git diff --stat $prev_prod $latest_prod
内容的提问来源于stack exchange,提问作者Strinder
相关产品推荐
相关产品推荐

