前端使用github pages 部署自己的网站

26 篇文章 1 订阅
订阅专栏

前端使用github pages 部署自己的网站

起因

前段时间做了个小工具,能够大幅度提高前端处理国际化的效率.

但是只能自己在本地使用,没有办法把它分享出来给大家一起使用…

就想了解一下如何把这个工具部署到服务器上,这样大家就都可以访问并使用了

困难

作为一名前端小开发,其实平时也就会写写页面,自己的视野仅仅放在前端这个领域

在企业里基本上入职之后,都有一套成熟的流程让我们不用关心项目的集成和部署(gitlab,Jenkins之类的工具)

我们只需专注于业务层面,画画页面,写写业务逻辑,然后提交到代码仓库,通过测试后就与我们没有关系了

正是因为这些,我们成为了一个个孤岛(螺丝钉)

尝试

因为是一个纯前端的项目,可以使用github pages进行部署

如何使用github pages 进行部署
  1. 把打包后的dist文件直接推到github仓库里

  2. 然后在仓库里面点击Setting=>pages=>选择分支=>部署的位置=>保存就可以了

  3. 然后就会生成一个地址,我们直接访问这个地址就可以跟我们本地看到的页面一样

问题:

  • 项目中用了第三方api的接口,在本地做了代理,可以使用,但是在github pages 里面产生了跨域

解决:

  • 因为无法在github pages 里配置代理,最后只能选择jsonp的方式来解决跨域的问题

至此:我达到了我的目的,可以让大家通过网址来访问我做的小工具

https://david-xia001.github.io/JSON-internationalization/

缺陷:

  • 仔细思考一下,上面的尝试我们只做了部署的操作

  • 也就是说,我如果要在我这个项目里改点什么东西,就必须手动打包后推送到远程才行(太麻烦了,我只想坐着喝茶)

进阶

项目的情况
  1. 这里我分了两个仓库
  2. 一个私有仓库是保存我的源码(怕被大佬嘲笑)
  3. 一个开源仓库是用来保存打包后的代码的(进行github pages 部署)
  4. 我在本地更改的代码每次都会推送到私有仓
  5. 然后打包后的dist文件都会推送到开源仓
最终解决方案-actions
  • github 提供了一个功能,有点像jenkins,用它就可以帮我们自动集成部署了

  • 可以直接在github网页上操作,最后会生成一个工作流的文件放入你的项目中

  • 能写这个文件需要一定的linux基础以及对github actions文档进行学习才行

  • 这里我直接贴代码了(大家可以直接复制,改一改参数就可以)

    name: Node.js CI CD
    
    on:
      push:
        branches: [ "main" ]
    
    jobs:
      build:
    
        runs-on: ubuntu-latest
    
        steps:
        - name: Checkout
          uses: actions/checkout@main
        - run: npm install && npm run build
        
          # 部署到 GitHub Pages
        - name: Deploy
          uses: JamesIves/github-pages-deploy-action@v4.3.3
          with:
              token: ${{ secrets.ACCESS_TOKEN }}
              repository-name: David-XIa001/JSON-internationalization
              BRANCH: main
              FOLDER: dist
              CLEAN: true
              commit-message: "Deploy by source"
    
  • 如果你是开源仓库的话,没必要搞得这么复杂(网络上有很多解决方案),因为github pages只支持开源仓的部署

  • 但是我希望我的源码是私有仓,部署是开源仓,这个就稍微复杂一点

  • 这里用了一个开源的部署库 JamesIves/github-pages-deploy-action

  • 里面有个参数repository-name,可以指定你要部署的仓库(前提是需要PAT)

  • 而且需要将PAT的值放入到仓库的secret里

  • 然后置于这个参数中 token: ${{ secrets.ACCESS_TOKEN }}

    • 创建PAT(Personal Access Token)
      • 创建PAT的主要目的是给私有库访问目标库的权限,可以让私有库的actions推送构建好的代码到目标库中去
      • Profile Photo -> Settings -> Developer settings -> Personal access tokens -> Generate new token
      • 勾选下面两个scope: workflow and write:packages
      • PAT生成好之后,复制下来,为方便指代,不妨设它为TOKENXXX
    • 在私有库中设置Secret
      • 在私有库中: > Settings -> Secrets -> Actions -> New repository secret
      • 粘贴刚才生成的PAT TOKENXXX 到value框中,并命名这个secret为ACCESS_TOKEN
  • 这里基本就完事了,我们向私有仓push一下,这个action就会自动执行

  • 然后检查下开源仓,是否有更新,然后访问一下链接,发现东西都对得上

  • 至此就可以专注于业务开发了,每次提交就会重新部署

github-pages-deploy-action:用于将项目部署GitHub页面的GitHub动作
02-05
GitHub Pages部署操作 :rocket: 此将自动将您的项目部署到 。 可以将其配置为将生产就绪的代码推送到您想要的任何分支中,包括gh-pages和docs 。 它还可以处理跨存储库部署。 入门 :airplane: 您可以在您的工作流中包含该操作,以在任何事件触发。 如果您要部署到的远程分支还不存在,则该操作将为您创建它。 在工作流运行之前,您的工作流还需要包括actions/checkout步骤,以便部署工作。 您可以在下面查看此示例。 name : Build and Deploy on : [push] jobs : build-and-deploy : runs-on : ubun
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
11-20
前端项目,最主要的还是能够实际看到,因此考虑找个地方部署,因为自己的博客是部署github page 上的,并且这个项目也只是一个静态网站,所以这里同样选择使用 github page 同时,考虑到发布项目时,虽然使用 ...
项目打包部署githubGitHub Pages(静态网页)
zuo_kaizheng的博客
12-01 3230
1.在GitHub上建一个新仓库 2.建立好仓库要拉去到本地 git clone https://github.com/zuo-bufan/deploy-demo.git ( 这里放入自己仓库就可以了) 3. 进入deploy-demo仓库创建 vue项目 项目建立完成 4.运行项目(配置vue.config.js文件)【上面讲了很多废话,我相信小伙伴上面的步骤都已经会的,接下来要讲重点了】 在项目中建一个vue.config.js文件 vue.config.js代码 module.ex
GitHub Pages项目部署的详细流程介绍
最新发布
weixin_46367832的博客
06-04 1424
GitHub仓库地址有两种形式,即HTTPS和SSH,通过HTTPS地址克隆或提交代码等操作都需要进行身份认证,即输入用户名和密码校验通过之后才能完成相应操作,而通过SSH地址,在配置SSH key时,如果不配置密码,则无需校验,可以直接执行相关操作,04 运行打包命令,将项目静态资源打包备用,然后进入目标文件夹,将把打包好的静态资源文件提交到刚刚建立的Github仓库的gh-pages分支,(2)如果没有就添加SSH key(马赛克的部分,就填上自己的GitHub邮箱)然后去Github上查看就行。
vuepress搭建个人博客+Github Actions 自动部署(详细)
qq_43173415的博客
10-19 2099
Github Actions 自动部署 vuepress搭建个人博客 配置私钥和公钥 创建两个仓库 一个存放代码,一个用来显示打包之后的静态页面 其实也可以一个仓库完成 build 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言1.VuePress使用2.部署前的准备3.自动部署 前言 记录一下这几天使用vuepress搭建一个简单博客,然后利用github action自动化部署到远程仓库上,最终实现:在本地push代码到远程仓库的时候,能够自动发布到xxx.githu
快速搭建易于打理的个人博客 - 基于Github Pages与Actions的博客自动部署
GaryJ的学习笔记
01-26 398
本文首发于我的博客:jiangyixiong.top Hexo是一款快速,简洁且高效的博客框架。可以快速地将Markdown格式文章转化为静态博客页面。Hexo本身附带一键部署功能,可将生成的静态页面部署GitHub pages,但本文讨论的是另一种部署方式。通过Github Actions在提交博客源码时自动生成静态页面并部署Github PagesGithub Pages Github Pages 被设计用以发布存储于Github仓库的个人、组织、项目相关的静态页面。 Github P.
github action自动部署构建入门
爱死亡机器人
09-08 3554
简介 GitHub Actions 是 GitHub 的持续集成服务,于2018年10月推出。 GitHub Actions 帮助您自动完成软件开发周期内的任务。 GitHub Actions 是事件驱动的,意味着您可以在指定事件发生后运行一系列命令。 工作流程是您添加到仓库的自动化过程。 工作流程由一项或多项作业组成,可以计划或由事件触发。 工作流程可用于在 GitHub 上构建、测试、打包、发布或部署项目。 GitHub 官方市场,我们除了自己编写action,也可以借用别人的。 每个 action
5 分钟玩转史上最强大的自动发布工具 GitHub Actions
easylife206的专栏
09-13 793
GitHub Actions 是 GitHub 的持续集成服务,于 2018 年 10 月推出。这些天,我一直在试用,觉得它非常强大,有创意,比 Travis CI 玩法...
spa-github-pages:使用GitHub Pages托管单页应用程序
04-28
GitHub Pages服务器收到使用前端路由定义的路径的请求时,例如example.tld/foo ,它将返回一个自定义的404.html页面。 ,采用当前url,并将路径和查询字符串转换为仅查询字符串,然后仅使用查询字符串和哈希片段将...
deploy-github-pages-action:Github Action部署GitHub Pages
04-04
它首先检出代码,然后设置 Node.js 环境,安装项目依赖,接着运行构建命令(如 `npm run build`),最后使用 `JamesIves/github-pages-deploy-action` 将 `build` 目录的内容部署到 `gh-pages` 分支。`GITHUB_TOKEN`...
GithubPages上线简历生成和部署
08-10
GitHub Pages上上线简历生成和部署是一...通过以上步骤,你就可以在GitHub Pages上成功部署一个使用JavaScript和CSS编写的在线简历,展示自己的专业技能和个人风采。记得不断更新和完善,保持简历的时效性和吸引力。
xiyoung.github.io:我的博客网站由Hexo和Next开发,部署Github Pages
04-30
【标题】:“xiyoung.github.io:我的博客网站由Hexo和Next开发,部署Github Pages中” 这个标题揭示了博主使用了两个主要的开源工具——Hexo和Next,来构建其个人博客,并将该博客托管在了Github Pages上。Hexo是...
React项目,storybook实现通过git action动态部署到git page上
scorpioop_1120的博客
02-23 253
如果是默认一般都是在gh-pages的/(root)下面,要是存到了别的地方,记得改动pages。3.第三步:运行完成后到setting->pages 里设置自己部署需要的包存放的位置。4.最后显示这样就是成功啦~
使用githubpages配合action自动部署vue项目
12-13 1334
如果你需要某个 action,不必自己写复杂的脚本,直接引用他人写好的 action 即可,整个持续集成过程,就变成了一个 actions 的组合。这就是 GitHub Actions 最特别的地方。GitHub 做了一个,可以搜索到他人提交的 actions。另外,还有一个的仓库,也可以找到不少 action。
Github Actions 自动部署前端项目
weixin_43960320的博客
05-19 311
GitHub Action持续集成服务,目前已经免费开放使用,由于大部分人的个人项目都是放在Github上,那么使用它来发布、测试、部署,是非常方便的。 最近写了一个基于Vue3 + Vant4 的移动端模板,由于每次想查看线上效果都要手动去打包部署,就去学习了一下Github actions 自动打包发布 项目地址 欢迎 star (_) 如果对 Github actions 还不了解的可以看一下阮一峰老师这篇文档 参考文档 修改部署配置 在package.json中添加一个homepage字段 "h
Github Page 个人主页——项目部署
Otm-Z Blog
05-14 2004
一种基于 Github Page 服务搭建个人静态网站的方法
GitHub Actions 自动部署前端 Vue 项目
onepiece1991的博客
04-13 381
使用GitHub操作自动将项目部署GitHub页面。这个动作可以配置为将production-ready代码推送到您想要的任何分支中,包括gh-pages和文档。它还可以处理跨存储库部署,并与GitHub Enterprise配合使用
github天天用,但是你知道他其实还可以用来部署前端应用吗
szqandpk的博客
05-02 347
前言 大多数人只知道github是开源社区,可以用来做项目的版本管理,但是其实他还有一些其他功能和小彩蛋。有没有和我一样不想花钱去购置服务器的,对,我穷。还记得当初用大学生的身份腾讯云买的一元云主机,甚是怀念鸭😄😄。如果你也是暂时只有前端应用需要部署的话,github其实就可以帮你,非常方便,只是可能因为某些不可抵抗原因,加载比较慢,这里你懂得~~ 直接上手搞 先整出一个项目,为了贴合实际应用场景,我这里用的是vue项目,用我自己写的脚手架vue2-admin-cli——顺便打个广告👋👋,创建一个vue-
使用 github pages, 快速部署你的静态网页
weixin_34129696的博客
06-25 2989
使用 github pages, 快速部署你的静态网页 Github Pages 官网 Github Pages: Websites for you and your projects. Hosted directly from your GitHub repository. Just edit, push, and your changes are live. 前言 在日常工作中, 我们经常...
github actions 自动部署前端项目
05-31
可以的,Github Actions可以用来自动化前端项目的部署。以下是一个简单的例子: 1. 首先,在你的Github仓库中创建一个`.github/workflows`文件夹,并在该文件夹下创建一个`deploy.yml`文件。 2. 在`deploy.yml`文件中设置触发部署的事件,例如push到master分支。然后设置一个`job`,该`job`会在触发事件后运行。 3. 在该`job`中,使用`actions/checkout` action拉取代码,并使用`actions/setup-node` action安装依赖。 4. 接下来,使用你喜欢的打包工具打包你的前端代码,例如webpack或者parcel。打包后的文件会被存储在一个`dist`文件夹中。 5. 最后,使用`peaceiris/actions-gh-pages` action将打包后的文件上传到Github Pages。 下面是一个示例的`deploy.yml`文件: ```yml name: Deploy to Github Pages on: push: branches: - master jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Setup Node uses: actions/setup-node@v1 with: node-version: '12.x' - name: Install dependencies run: npm install - name: Build run: npm run build - name: Deploy to Github Pages uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./dist ``` 这个例子是使用npm来安装依赖和运行打包工具的。如果你使用的是yarn或者其他打包工具,你需要相应地修改`deploy.yml`文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 解决微信小程序navigator点击无法跳转的问题 17540
  • 小程序如何跳转到第三方H5页面 14107
  • Failed to load module script 解决方案 11003
  • 使用vite打包时候遇到的坑 9112
  • 前端如何使用canvas绘图并保存图片到本地 8394

分类专栏

  • javascipt 26篇
  • webpack 3篇
  • vite 1篇
  • redux 2篇
  • 跳转其他小程序 2篇
  • react 1篇
  • 程序人生 2篇
  • 答题闯关 1篇
  • 头脑风暴 1篇
  • react项目搭建 1篇
  • dva 1篇
  • global对象 1篇
  • 查看小程序Appid 1篇
  • css样式 1篇
  • 准去获取元素的高宽度 1篇
  • JavaScript方法 1篇
  • 理解防抖和节流 1篇
  • 防抖节流封装 1篇
  • 微信小程序 6篇
  • h5新特性 2篇
  • 解决ajax获取本地文件跨域问题 1篇

最新评论

  • 解决微信小程序navigator点击无法跳转的问题

    JUNE.DU: 太感谢了我遇到第4种,搞了好久都不行,感谢您

  • 小程序本地联调接口502解决

    鱼尾uuui: 解决了,我关了vpn也不行,重启一下开发工具就行了表情包

  • 解决微信小程序navigator点击无法跳转的问题

    日落851: 怎么删的?

  • 解决微信小程序navigator点击无法跳转的问题

    123121321: 感谢楼主,遇到了第一种!跳转的文件是我自己加的,没有被pages收录

  • 解决微信小程序navigator点击无法跳转的问题

    sbgfvsbfvfgvnsj: 感谢博主,我也遇到了第四种!

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • vscode 侧边栏资源管理器图标消失解决方案
  • Failed to load module script 解决方案
  • 小程序 vant button 组件不触发 form submit 问题及解决
2024年1篇
2023年7篇
2022年26篇
2021年28篇
2020年1篇
2019年10篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码福永百度爱采购宝安优化沙井百搜标王平湖网站推广系统永湖SEO按天扣费南联百搜标王双龙网络推广罗湖百度网站优化排名宝安网站优化按天扣费西乡网站搭建光明营销网站南澳SEO按天收费爱联关键词排名爱联网站推广系统坂田SEO按天计费横岗网页制作福永seo松岗seo网站推广石岩网站定制东莞网站推广坪地建设网站观澜网站优化推广坪地百姓网标王东莞网络广告推广吉祥seo平湖英文网站建设塘坑SEO按天扣费盐田网站推广爱联网站建设设计木棉湾网站推广方案歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化