如何在编写自己的shell脚本时添加版本功能?

时间:2014-09-12 15:16:44

标签: shell version-control version

我正在尝试编写自己的shell脚本。它差不多完成了,所以我想添加版本。例如,foo -v可以打印foo 1.0.0

但我不确定什么是好方法。我可以在我的执行文件中编写该版本,但每次将程序更新为新版本时都必须更改。

我需要你的帮助:)。

1 个答案:

答案 0 :(得分:1)

由于您的版本号某处(我的意思是,在计算机的某个地方,除了在您脑海中的某个地方),您可以保留该号码(如果可行,最好只在一个地方) ),然后读取并输出。

当然有很多方法可以做到这一点。一种方法是通过shell的.采购机制。例如,如果文件foo_version由单行

组成
FOO_VERSION=1.0.0

然后您可以在foo中使用

之类的内容
#!/bin/bash -e
. $(dirname "$0")/foo_version

# ...

echo "foo ${FOO_VERSION}"

或者您的foo_version可以只包含1.0.0,在这种情况下,您的foo只会将其视为文字。还有其他可能性,特别是如果您将打包您的软件进行分发。

正如@JonathanLeffler所观察到的,当您与团队合作和/或使用版本控制软件(RCS,CVS,Subversion,Mercurial,Git等)时,需要更仔细的方法,但是如果您开始使用版本控制软件,当您阅读版本控制软件的手册时,您很快就会了解到这一点。