Git服务器端自动更新钩子
听说Git比svn要好 就搞了Git用了用 但是确实 Git 还是需要学习一下 怎么搞 但是个人感觉 百度出来的东西不是很详细 或者说不够简单明了 都比较深 而对于 服务器端的Git 自动更新的钩子 更是百度了很久 就做个记载好了
其实Git 安装不难 挺简单的 先说说它的工作流程把 SVN是只有在服务器 一个版本库 每次修改完代码就更新到服务器上的版本库 然后再通过hooks自动更新到 在服务器上检出的那个部署的目录 Git就是在本地也创建个版本库 不过是clone服务器上的库 然后修改完代码后 提交到本地的库 然后推送到服务器上的版本库 然后就是在服务器端整个钩子 让它在更新到项目部署的那个目录 干货, 我的是在这个目录下创建的服务器版本库/wwwroot/git/gittest.git/ 这个是钩子目录/wwwroot/git/gittest.git/hooks
在这里添加post-receive
脚本 里面的内容如下:
#!/bin/bash
unset GIT_DIR
cd /var/www/html/somesite #这个是项目部署的目录
git pull
然后把项目目录的所有者 改为Git推送的那个用户
chown -R git:git /var/www/html/somesite
chown -R git:git /var/www/html/somesite/.git
我的git专属的linux用户是git
然后应该就可以了 我是成功了 其他没说到的 应该都能百度的到
参考:https://segmentfault.com/q/1010000002584563 第三个回答