我使用TortoiseHg作为我的网站的版本控制系统。我想在网站上贴一个标签,报告服务器上当前的修订版本。我不想手动更新它,而是希望它是自动的。提交后在文件中包含修订号?
如果我可以设置TortoiseHg在每次提交时将修订号写入文件,则可以将我的网站设置为在发生更改时加载版本号,并将此号码呈现给页面。是否有可能让TortoiseHg做到这一点?
我使用TortoiseHg作为我的网站的版本控制系统。我想在网站上贴一个标签,报告服务器上当前的修订版本。我不想手动更新它,而是希望它是自动的。提交后在文件中包含修订号?
如果我可以设置TortoiseHg在每次提交时将修订号写入文件,则可以将我的网站设置为在发生更改时加载版本号,并将此号码呈现给页面。是否有可能让TortoiseHg做到这一点?
首先,我有义务提醒您修订号码在分布式系统中很大程度上没有意义。
其次,你可能想要的是一个钩子。有多种方法可以做到这一点。最简单的可能是像这样的你的网络服务器结帐:
# this gets run after each update, writes the LOCAL revision number to a file
[hooks]
update = hg id --num --rev . > update-number
还有关键字扩展,这将扩大在文件CVS/SVN风格的关键字。他们可以包括版本,日期,作者等...
https://www.mercurial-scm.org/wiki/KeywordExtension
...但它也值得一读这篇文章,为的原因,你不会使用它。
hg tip --template "{rev}:{node|short}-{latesttag}+{latesttagdistance}\n"
其中for,f.e.对于hgsubversion repo今天我得到的结果
830:d4b3b8370b3c-1.2.1+42
由于您使用.NET,也有建立一个自动执行此操作时,您的解决方案编译工具:
硬件故障+ R后从备份estore从此挂钩停止工作,无论出于何种原因。当重新应用它时,我发现'update ='不起作用:而是使用'commit ='。 – Oliver