设为首页 收藏本站
查看: 714|回复: 0

[经验分享] git web开发版本管理

[复制链接]

尚未签到

发表于 2018-9-16 13:22:41 | 显示全部楼层 |阅读模式
  使用git来管理web开发;
  我们需要做的事情 :
  1,在服务器建立版本仓库;
  2,在服务器建立稳定版本的站点,编写版本仓库的hooks;
  3,在开发服务器上提交开发版本;
  下面一步一步来:(注意建立新用户,如git)
  1,在服务器上建立版本管理仓库;假定目录为 /git/,切换到该目录下;建立一个工程
cd /git/mkdir project.git  
git init --bare
  2,在服务器上建立稳定版本的站点,例如目录是 /home/www ; 下面是重点,写钩子hooks:
cd /git/project.gitcp hooks/post-receive.sample hooks/post-receive  
vim hooks/post-receive
  
#加入下面代码
  
GIT_WORK_TREE=/home/www git checkout -f
  3,在开发服务器上提交开发版本;假设目录为/git/project/

ssh-keygenssh-copy-id -i ~/.ssh/id_rsa.pub git@yourserver  
git init
  
git add *
  
git commit -a -m "init a version"
  
git remote add origin git@youserver:/git/project.git
  
git push origin master

  这个时候,查看一下 /home/www下,文件应该已经更新了...
  这种方法在生产服务器上也建立了版本管理,这样会消耗服务器资源,还可以带来源代码泄露(例如某个开发版本将密码都写了进去,后果不堪设想)等其他安全隐患,所以在后面的开发中,我们采用了Git+Rsync的架构,内网开发服务器架设GitLab进行源代码管理 ,同时搭建rsync客户端进行代码同步;生产服务器只使用Rsync服务端监听端口接收同步请求。
  GitLab的搭建可以参考:https://www.abcdocker.com/abcdocker/2041
  写一个shell脚本或者使用php进行网页命令调用来同步代码是一个很不错的想法,我们用的是php执行shell命令来进行同步的。
  另外,如果想在多台生产服务器上进行代码同步,可以使用rsync+inotify进行实时同步,这样,在内网开发服务器向一台主服务器同步代码后,inotify监控脚本可以同步其他生产服务器,同步。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-584585-1-1.html 上篇帖子: 使用 Git上传代码到远程代码仓库详解 下篇帖子: git命令大全(非常齐全)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表