2013-02-26 123 views
0

我有一个使用git的项目。我已经通过SSH访问Web服务器,我可以执行命令:如何在浏览器中获取当前的git标签/分支/修订版?

git log --decorate 

,它会给我什么是目前部署在该服务器上的信息。但是如果有人没有这样的访问权限,他们应该总是让我检查。

我正在考虑的解决方案,这将产生各git pull后的git log --decorate倾倒或任何其他命令文件,或者当我签任何标记。每个人都可以通过url {website}/current-version.html访问。

我想我应该使用git挂钩或者有一个更简单的解决方案? 我如何实现这个?

回答

1

如果你想显示git日志输出,那么post-receive钩子是最好的。

如果你想显示一个潜在的更加人性化的版本号,然后我会建议之一: -

  • 一个post-receive钩出的目前发布的版本标记的名称(假设你标记的版本)
  • 将电流version.html在你的git回购所以它会相处的git pull
1

如果你的服务器是混帐回购协议的副本更新,您正在使用的标签,那么,混帐描述将使用最新的标签,给偏移:

$ git describe --long 
r1.0-2-gca93d0a 

在上面,最后一个标签是R1.0和表明,我们是两个提交过去那种标签,与g(它代表'git')和目前的散列表。

$ git log --oneline 
ca93d0a Add info on testing. 
949d558 Fixes to get wsdl2java working. 
d0a02b1 Initial CXF. 

正如这里可以看到,标签R1.0点在d0a02b1承诺:

$ git show-ref --dereference r1.0 | tail -1 
d0a02b1488154b052fed9d568f3823d15567ebb5 refs/tags/r1.0^{} 
相关问题