我可以让 git print xyz 样式标签名称以合理的顺序吗?
考虑这个版本号列表:
0.3.0
0.3.1
...
0.3.8
0.3.9
0.3.10
0.3.11
git tag
将按以下顺序打印它们:
0.3.0
0.3.1
0.3.10
0.3.11
0.3.2
...
我有什么方法可以让git tag
以“数字”顺序而不是字母顺序打印它们命令?或者一个解决方法 - 也许是一个程序,我可以通过管道输出以按照我想要的方式对它们进行排序?
Consider this list of version numbers:
0.3.0
0.3.1
...
0.3.8
0.3.9
0.3.10
0.3.11
git tag
would print them in the following order:
0.3.0
0.3.1
0.3.10
0.3.11
0.3.2
...
I there any way to make git tag
print them in 'numeric' order as opposed to alphabetical order? Or a workaround - perhaps a program I can pipe the output through to order them how I want?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您很快(使用 Git 1.9.x/2.0,2014 年第 2 季度)就能够仅使用 git 来获取正确排序的输出:
请参阅 提交 b6de0c6,来自 提交 9ef176b,作者Nguyễn Thái Ngọc Duy (
pclouds
):对于您的情况:
一些测试用例:
您将得到以下结果:
You will soon (with Git 1.9.x/2.0, Q2 2014) be able to use git only for getting the right sorted output:
See commit b6de0c6, from commit 9ef176b, authored by Nguyễn Thái Ngọc Duy (
pclouds
):In your case:
A few test cases:
Here is what you would get:
此处使用的
sort
选项细分:-n
- 使用数字字符串顺序排序(因此10
位于1
之后>)-t.
- 使用句点作为字段分隔符-k1,1
在第一个字段(且仅第一个字段)上定义排序键-k2, 2
在第二个字段上定义排序键(并且仅第二个字段) field)-k3,3
在第三个字段上定义排序键(并且仅第三个字段)Breakdown of the
sort
options being used here:-n
- sort using numerical string order (thus10
comes after1
)-t.
- use periods as field separators-k1,1
define a sort key on the first field (and only the first field)-k2,2
define a sort key on the second field (and only the second field)-k3,3
define a sort key on the third field (and only the third field)更简单的解决方案:
此处使用的
sort
选项的详细信息:Easier solution:
Breakdown of the
sort
options being used here: