繁体   English   中英

“裸”git存储库:我怎样才能让Apache总是“看到”最新的提交?

[英]“Bare” git repository: how can I let Apache always “see” the latest commit?

我们在服务器上有一个“裸”的git存储库,用于Web门户项目。 一些程序员,设计师等......对它进行了数十次pushpull

现在我们想要在服务器本身上测试项目,并且总是通过Apache Web服务器测试最后一次提交,该服务器安装在存储“bare”git存储库的同一台机器上。

我们怎样才能“解开”存储库,让工作目录始终 包含上次push的最后一次提交?

或者其他任何旨在获得相同结果的东西?

您可以使用post-receive挂钩在webserver文档根/存储库中执行git pull

在您的裸存储库中

mv hooks/post-receive.sample hooks/post-receive
chmod +x .git/hooks/post-receive

收到的帖子应该是这样的

#!/bin/sh
WEB_ROOT='/var/www/project'
cd $WEB_ROOT
git pull

一个更优雅的解决方案 ,不涉及Web服务器区域是git存储库,您还可以查看有关钩子的git文档

注意:如果您使用简单的解决方案,请确保您的网络服务器不提供.git目录, 这将使一些黑客/破解者访问网站源代码!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM