赞
踩
git终端执行命令:ssh-keygen -t rsa -C "youremail@xxx.com"
生成的公钥如下图(id_rsa_pub文件即是公钥)
登录服务器,执行命令:ssh-keygen -t rsa -C "youremail@xxx.com",生成服务器公钥
需要注意的是,服务器用户要切换到www,再执行以上命令。
开启www用户的方法:
1.在root用户下执行 vim /etc/passwd
2.修改www用户为 www:x:1001:1001::/home/www:/bin/bash
3.如果生成失败,请检查/home/www/.ssh目录 及 .ssh目录下的默认文件是否存在。
登录码云平台,找到设置下的SSH公钥,分别添加第一步和第二步生成的公钥。
新建一个仓库,用于测试。
把仓库分配克隆到本地和服务器。
1.本地直接克隆即可
git clone git@gitee.com:yourname/webhook.git
2.服务器克隆仓库
切记在www用户下执行(因为git公钥是在www用户下创建的)
1. php.ini需要去掉禁用函数exec 和 shell_exec
2. 配置HTTP URL 到码云的webhooks
webhooks.php代码如下:(当然你可以验证webhooks的密码或签名)
<?php $path = "/data/wwwroot/gxt.xxx.cn/webhook";//git pull 目录 shell_exec("cd {$path} && git pull origin master 2>&1"); echo "done";
在本地克隆的文件下新加文件test.txt
git终端执行
1.git add test.txt 2. git commit -m 'test' 3.git push查看码云webhooks执行记录
在服务器查看克隆的文件目录(webhook目录),执行 ls 命令
test.txt已经存在。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。