我有项目部署到多个站点。我需要一种方法来识别网站上运行的分支或标记版本。我知道如果每个站点都是原始存储库的简单克隆,我可以运行git命令或从 .git 文件夹中读取文件。绊脚石是使用的服务器可能没有shell访问权限。部署到这些站点将下载所需标签的zip文件,然后在网站上提取它。
所以我想知道是否有一种方法可以让GIT输出标记或分支在存储库中?每次提交时都会自动更新该文件(或者在创建标记时更正确)。
答案 0 :(得分:1)
您可以通过git post-receive挂钩写出文件。提交/推送完成后,将自动执行一个命令将当前分支写入文件。
As an example - In hooks/post-receive put the following
GIT_REPO=$HOME/myrepo.git
git branch | grep \* > current_branch.txt
如果您需要更详细的文档 - http://git-scm.com/book/en/Customizing-Git-Git-Hooks