Git 本地项目自动化部署到服务器

原标题:Git 本地项目自动化部署到服务器

问题描述


1、通过 《 Git 从本地开发到部署上线流程_Windows版》,我们知道了如果使用 Git 实现从线下到线上库的过程。

2、接下来我们来讲解如何 本地->库->服务器,的自动化部署过程

3、帮助:Git基础命令


解决方案


1、查看文章来源站点https://www.yii666.com/ 服务器 是否生成公钥,没有生成就生成一下公钥【这个公钥只要用于在服务器 root  用户上,拉取仓库项目的】

cat /root/.ssh/id_rsa #查看是否生成
ssh-keygen -t rsa -C "your@email.com" #生成公钥


2、通过公钥在网站目录 www/wwwroot/web,【自己网站所在的根目录】 拉取项目。或者跳过--->红字必须看

c文章来源地址https://www.yii666.com/apps/49.htmld /www/wwwroot/web

sudo -Hu www git@code.aliyun.com:xxx/xxx.git . # 最后的 ".",表示在当前目录下拉取,不再新建目录

!!注意,这里初始化clone必须要用www用户,这时候确定服务器www用户下所有git的功能都能使用


注意:这里比较重要的是权限问题

www ---- 网站的用户,可以通过命令ps -ef | grep nginx,进行查看用户。

1、上述生成的 公钥 是 服务器 root 用户的。可以用来进行第一次拉取。拉取之后的文件权限是root的。可以自己手动改成 www 

2、查看一下步骤:

通过 命令 文章来源地址https://www.yii666.com/apps/49.html查看 www 用户所在的文件夹,假如路径为:/home/www/

vim /etc/passwd

运行一下命令,为 www 生成一个专用的公钥,这个公钥会放在,home/www/ 下

sudo -Hu www ssh-keygen -t rsa

查看公钥,并且在库里面新增公钥

cat /home/www/.ssh/iwww.yii666.comd_rsa.pub # 服务器 www 用户公钥

在本地执行 git push 操作的时候,就会通过钩子触犯 webhook.php 文件,从而使服务器执行 git pull操作,最后送上成功的 log 截图

1、通过 《 Git 从本地开发到部署上线流程_Windows版 》,我们知道了如果使用 Git 实现从线下到线上库的过程。 2、接下来我们来讲解如何 本地-库-服务器,的自动化部署过程


3、这里以php 为例子

     新建一个 webhooks.php 文件在根目录,用来执行拉取项目命令的即可。代码如下:webhook.php


4、

以阿里云的 Code 为例。

添加一个 WebHooks,链接填上 http://www.xx.com/webhooks.php?token=token,在推送的时候触发就可以了。

代码如下:

image.png


做到这一步,发现网上各种各样的方法。简直是眼花缭乱。都分不清是要建立Git 库,还是 服务器上面又做库,又做网站了。

这里讲解一下最简单的做法

流程很简单就是。当我本地推送www.yii666.com git push代码到 远程仓库的时候,仓库去访问到我们的网站下面的钩子进行拉取动作


5、注意权限,要看清楚当前网站的用户是谁。然后分配git 使用权限给对应用户。



Git基础命令

git init                     #在现有目录中初始化仓库:

git clone [https/ssl/url]            #克隆仓库/拉取线上库代码到本地

git status #查看哪些文件修改了

git add [name]                 #添加文件到暂存区,全部[--all]

git commit [name] -m [comment]        #提交文件到线上库前,先备注信息,[name]为单个文件,全部可不填

git pull [remote-name]                #远程仓库拉取文件

git push [origin] [master]           #推送到远程仓库


来源于:Git 本地项目自动化部署到服务器

其他相关文章
    领支付宝红包赞助服务器费用
    微信公众号:小猪波罗蜜
    关注公众号,回复999,可联系站长解答疑问哦。每天分享更多有趣的事儿,有趣有料!
    99人已关注
    未经允许不得转载:广州建站小戴BOTAO博客 » Git 本地项目自动化部署到服务器

    觉得文章有用就打赏一下文章作者

    支付宝扫一扫打赏

    微信图片_20190322181744_03.jpg

    微信扫一扫打赏

    请作者喝杯咖啡吧~

    支付宝扫一扫领取红包,优惠每天领

    二维码1

    zhifubaohongbao.png

    二维码2

    zhifubaohongbao2.png