git输出版本信息

很久不更博了,重新回来写博客。

这是关于git输出版本信息。

 具体需求是,需要在软件中能查看到当前软件的tag版本号。而且不能简单的显示tag号,还要可以区分是release还是develop版。

 例如baseline最新的tag之后没有其他commit号,则只需显示tag号,如v0.1.0。若在tag之后又有其他的commit被merge,则需显示完整格式为,tag号-commite号。只要显示的版本号不带commit,就判断为release版,其他则为develop版。

 具体思路为,

 1.在Makefile中调用shell git命令来查询软件当前的commit, message以及tag信息。

 2.在Makefile中通过sed将最新的commit,message,tag值更新到verison这个shell脚本中。

 3.shell脚本通过以上信息判断版本信息,并打印。

 4.将脚本做到rootfs的/usr/bin下。

 

 最终烧到板子上之后,用户只需在命令行输version便可查询到版本信息。

 

 

 

但是最终发现一个神奇的命令,能直接减少上述50%左右工作量。

直接一条git describe --tags即可。完全不需要通过commit号,message信息等来判断!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值