Git 部署 Web 网站
/***************************************************************************
* Git 部署 Web 网站
* 说明:
* 主要是想自动部署静态网站到自己的VPS上,这样做的目的是方便像github
* pages那样更新内容。
*
* 2017-2-7 深圳 南山平山村 曾剑锋
**************************************************************************/ 一、参考文档:
. 处理git clone命令的非标准SSH端口连接
http://nanxiao.me/git-clone-ssh-non-22-port/
. 使用Git来部署一个Web站点笔记
http://rmingwang.com/using-git-to-deploy-a-web-site.html 二、操作步骤:
. VPS安装Web相关软件,nginx、Apache,选自己擅长的就行;
. VPS生成git SSHkey,主要是提交代码的时候使用SSH来提交;
. 把自己的id_rsa.pub文件内容拷贝到VPS的/~/.ssh/authorized_keys文件里,一行一个;
. 在VPS上创建git仓库:
git init --bare demo.git
. 在demo.git的hooks创建post-receive文件并添加:GIT_WORK_TREE=/home/zengjf/www git checkout -f,操作如下:
[root@localhost demo.git]# cd hooks/
[root@localhost hooks]# ls
applypatch-msg.sample post-receive.sample pre-rebase.sample
commit-msg.sample post-update.sample prepare-commit-msg.sample
post-commit.sample pre-applypatch.sample update.sample
post-receive pre-commit.sample
[root@localhost hooks]# pwd
/home/zengjf/demo.git/hooks
[root@localhost hooks]# cat post-receive
GIT_WORK_TREE=/home/zengjf/www git checkout -f
[root@localhost hooks]#
. 在开发机上写好内容,git add、git commit,最后推送到VPS服务器上,命令大致如下:
git push ssh://root@21.106.105.15:7841/home/zengjf/demo.git master
. 自动在web目录生成了想要的推送文件:
[root@localhost www]# ls
index.html
[root@localhost www]# cat index.html
zengjf
two times
three times
four times
five times
[root@localhost www]# pwd
/home/zengjf/www
[root@localhost www]#
Git 部署 Web 网站的更多相关文章
- 本地git部署web连接azure的git存储库
本地git部署web 创建本地存储仓库 输入以下命令创建git本地仓库(会在当前目录下生产一个.git的目录) git init 然后提交内容 在git仓库所在的目录下存放好需要的网页文件 将文 ...
- 利用IIS部署WEB网站以及解决CSS/JS不能显示问题
利用IIS部署WEB网站以及解决CSS/JS不能显示问题 转载声明:http://blog.sina.com.cn/s/blog_a001e5980101b4kt.html vs中正常IIS发布网站后 ...
- Lodop部署web网站 客户端本地打印角色
Lodop用于客户端本地打印,部署到web网站非常简单,此博文介绍的是混合部署方式,该方式兼容所有浏览器,当浏览器支持np插件的时候,使用Lodop插件方式,浏览器不支持np插件,会用C-Lodop服 ...
- .Net Core 部署之一 《CentOS 从GitHub/Gitee 等源代码网站部署Web网站》
先看下楼主从某阿打折购买的渣渣服务器 lsb_release -a 一.安装dotnet-SDK 注册微软的服务 sudo rpm -Uvh https://packages.microsoft.co ...
- [转帖]龙芯服务器部署WEB服务的体验和详细步骤
龙芯服务器部署WEB服务的体验和详细步骤 2019年01月02日 18:40:34 weixin_40065369 阅读数 1733 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权 ...
- Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(二)--技术流ken
项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)--技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个 ...
- Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(一)--技术流ken
前言 在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+A ...
- Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(一)
在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+Ansi ...
- Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(7)
项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)–技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个静 ...
随机推荐
- unity回调函数范例
using System.Collections; using System.Collections.Generic; using UnityEngine; public class callback ...
- iOS tableView自定义删除按钮
// 自定义左滑显示编辑按钮 - (NSArray<UITableViewRowAction*>*)tableView:(UITableView *)tableView editActio ...
- Delphi编译指令说明
Delphi快速高效的编译器主要来自Object PASCAL的严谨,使用Delphi随时都在与编译器交流,大部分情况下不需要干涉编译器的运行,但是有时也需要对编译器进行必要的设置. ******** ...
- spring+thymeleaf实现表单验证数据双向绑定
前言 这个教程介绍了Thymeleaf与Spring框架的集成,特别是SpringMvc框架. 注意Thymeleaf支持同Spring框架的3.和4.版本的集成,但是这两个版本的支持是封装在thym ...
- [BJWC2012]冻结
[BJWC2012]冻结 luogu BZOJ 分层图最短路,层与层之间连半边权边 #include<bits/stdc++.h> using namespace std; const i ...
- 默写一个socket客户端和socket服务端的基本通信,即:收发消息
Server: import socket sk = socket.socket() sk.bind(('192.168.0.95',8898)) #把地址绑定到套接字 sk.listen() #监听 ...
- 我的Android进阶之旅------>如何获取系统中定义了那些权限
在Window控制台中输入如下命令可以看到Android系统中列出的所有权限(如果自定义权限注册成功,在这里也会找到这些自定义的权限) adb shell pm list permissions C: ...
- 我的Android进阶之旅------>HTTP Header 详解
HTTP(HyperTextTransferProtocol)即超文本传输协议,目前网页传输的的通用协议.HTTP协议采用了请求/响应模型,浏览器或其他客户端发出请求,服务器给与响应.就整个网络资源传 ...
- C调用Lua中的函数解析table
Passing Tables to Lua Functions A use case that happens often is the passing of tables to and from L ...
- PAT 天梯赛 L2-003. 月饼 【贪心】
题目链接 https://www.patest.cn/contests/gplt/L2-003 思路 用贪心思路 最后注意一下 总售价有可能是浮点数 AC代码 #include <cstdio& ...