前言 在项目开发中使用git进行代码的管理,每次完成更改上传代码后,还需要登录服务器将代码拉取下来.现在git服务器(gitee/gitlab/github)都会有Webhooks功能,以实现在向git仓库推送/合并等时机让服务器自动拉取新代码. 流程说明 使用Webhooks后,整个上传部署流程如下: 服务器端操作 webhook脚本创建 关于推送的post数据格式,参考码云的<WebHook 推送数据格式说明>.根据这个参数格式编写php的脚本文件如下: <?php /** *git…
Git服务搭建多见于linux环境,但windows主机也不少,目前网上文章诸多不全,且以讹传讹,不甚清楚.下面介绍windows环境下的自动部署和发布. 所需环境及资源:Java环境.Gitblit:示例服务器环境:windows server 2012 一.Java环境的安装 1)下载JRE安装包windows环境下使用GitBlit,必须安装Java环境,而Java环境可采用JRE或JDK两种方式安装,这里采用JRE的方式,其安装包相对JDK也要小不少,若已安装JDK环境可忽略. JRE安…
实现自动部署的关键就是利用github的webhooks,我们在github建立一个项目之后,在项目主页点击Settings,看到Webhooks点击打开可以添加一个链接,这里的意思是,github可以帮你监听一些项目发生的事件,当指定事件发生时,会向你指定的链接发一个post请求,然后你就可以知道自己的哪个项目发生了什么事情,再去做一些具体的操作,那么这时就可以利用shell脚本实现项目自动pull并且重新部署,最后实现的效果就是在本地push代码,一段时间过后,效果就展示在了网站上面. 自动…
1.初始化库 git init --bare wap.git 2.配置wap.git/config文件 [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true worktree = /data1/project/admin [receive] denycurrentbranch = ignor…
前言 Jenkins在工作中都使用过,之前都是运维去搭建部署,弄好了之后给我一个网址去构建项目就可以了,所以也都是一直没了解过安装过程. 今天在自己的服务器上搭建了一遍,中间有遇到很多坑,特在此归纳总结一下. 安装 首先需要先安装jdk和maven,用来编译和打包. jdk的安装教程:https://www.cnblogs.com/xuliangxing/p/7066913.html maven的安装教程:https://www.cnblogs.com/freeweb/p/5241013.htm…
准备工作: 1.一台虚拟linux环境和window 开始工作 1.安装git(略) 2.创建git用户和创建test.git裸仓库 [root@localhost ~]# useradd -m git #创建用户,shell是bash [root@localhost ~]# su git [git@localhost root]$ cd ~ [git@localhost ~]$ mkdir repository && cd repository [git@localhost reposi…
之前已经用Git实现了自己博客的提交自动部署,并自动提交到GitHub和coding以备不时之需.平时项目代码都托管在Coding或者GitHub上,也已经用上了coding提供的webhook功能,偶尔个别自己玩玩的项目提交了代码之后再SSH到服务器上去 git pull 一次,刚好一起做成了自动部署,方法记录起来备忘. 实现步骤 在服务器上 以Nginx环境为例,Apache请看OverTrue的教程 生成公钥 公钥有两个:1. git用户公钥,2. 部署公钥: git用户公钥 123 ss…
之前在一台vps服务器上面搭建了Git服务器,用来做代码管理,方便团队开发.但是问题也就相应的来了,使用git可以轻松的上传代码,而由于做的是web开发,每次还都得到服务器上把代码手动pull或者复制到网页所在的文件夹下,也就比较麻烦,不适合我这种懒人.git提供了hook机制,可以很容易的实现代码的自动部署. 个人原创,版权所有,转载请注明原文出处: http://www.embbnux.com/2014/09/05/git_server_let_code_auto_deploy/ 一 git…
当一个项目需要纳入到版本控制的时候,选择的工具还是比较多的,最常见的就是工具有CVS,SVN,GIT等.在平时的开发中视情况而定,从来就没有最好的版本控制工具,只有最适合的工具.在这里我习惯用git来管理自己的项目,当然之前使用svn管理的,但是当用了git工具就不愿意再用其它的工具来管理.这里除了习惯之外,git的很多功能是svn不具备的,最简单的就是离线提交,用git管理的项目你会发现整个项目的大小变化不大,不像svn那样每个目录又有一个.svn 的目录,而且会使项目的变得很大.关于git与…
安装git服务器先安装依赖软件:yum -y install gcc zlib-devel openssl-devel perl cpio expat-devel gettext-devel openssl zlib curl autoconf tk1.下载最新的git文件:https://www.kernel.org/pub/software/scm/git/git-2.13.0.tar.gz2.tar xzf git-2.11.1.tar.gz 3.cd git-2.11.14../conf…