最新和之前标签之间的Git差异

时间:2016-01-14 22:13:29

标签: git git-diff git-tag

我想像this one一样做差异。

唯一的区别是我不想手动通知标签名称'我想让它们被git命令检索。

我知道git describe --tags会返回我的最新代码。但是前一个怎么样?如何获得它?

基本上我想要的是:

$ git diff $(git_command_to_get_previous_tag) $(git describe --tags)

而我不想要的东西:

$ git diff 1.0 2.0

1 个答案:

答案 0 :(得分:3)

您可以使用以下方式获取最新标记:

git tag --sort version:refname | tail -n 1

以前的标签使用:

git tag --sort version:refname | tail -n 2 | head -n 1

把它放在一起,你可以用这个来获得差异:

git diff $(git tag --sort version:refname | tail -n 2 | head -n 1) $(git tag --sort version:refname | tail -n 1)