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   第三个回答

posted @ 2017-02-22 17:05  thebestrule  阅读(1736)  评论(0编辑  收藏  举报