当前位置: 首页 > article >正文

利用github部署项目

挂载GitHub Pages的方法

基本步骤
  1. 创建仓库

    • 在GitHub上创建一个新的仓库。如果使用自定义域名,则仓库名应为<username>.github.io;否则可以是任意名称。
  2. 启用GitHub Pages

    • 进入仓库的设置页面,在“Pages”部分选择要发布的分支(通常是mainmaster),然后保存更改。
  3. 上传网站内容

    • 将你的HTML、CSS、JavaScript等文件上传到仓库中指定的分支。

什么是SSH

SSH是一种网络协议,用于安全地访问远程计算机系统。它提供了加密的数据传输、用户身份验证以及对远程命令执行的安全通道。通过SSH密钥认证,用户无需每次输入用户名和密码即可安全地连接到服务器或服务(如GitHub)。

利用SSH挂载网页到GitHub

详细步骤
  1. 生成SSH密钥对

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    

    这将在~/.ssh/目录下生成id_rsa(私钥)和id_rsa.pub(公钥)文件。

    在这里插入图片描述

  2. 添加公钥到GitHub账户

    • 登录GitHub,导航至“Settings”> “SSH and GPG keys”。
    • 点击“New SSH key”,粘贴你的公钥内容,并给它起个名字(例如“My Laptop SSH Key”)。

    在这里插入图片描述
    在这里插入图片描述

  3. 测试SSH连接

    ssh -T git@github.com
    
  4. 配置本地仓库并推送代码

    • 如果尚未初始化Git仓库,请先初始化:

      git init
      
    • 添加远程仓库:

      git remote add origin git@github.com:yourusername/yourrepository.git
      
    • 提交更改并推送:

      git add .
      git commit -m "Initial commit"
      git push -u origin main
      

可能遇到的问题

  • 路径问题导致无法创建.ssh目录:由于非ASCII字符的存在,导致Git Bash无法正确处理用户主目录路径。
  • 权限问题阻止了文件夹的创建:尽管手动创建了.ssh文件夹,但Git Bash依旧尝试使用错误路径

最终解决步骤

  1. 手动创建.ssh目录C:\Users\YourUsername\.ssh

  2. 重命名config.txtconfig,并在其中指定IdentityFile为绝对路径:

    Host github.com
      HostName github.com
      User git
      IdentityFile /c/Users/YourUsername/.ssh/id_rsa
    
  3. 手动创建known_hosts文件,并加入GitHub的公钥指纹:

    github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
    
  4. 测试SSH连接,明确指定known_hosts文件的位置:

    ssh -o UserKnownHostsFile=/c/Users/YourUsername/.ssh/known_hosts -i /c/Users/YourUsername/.ssh/id_rsa -T git@github.com
    
  5. 完成GitHub Pages部署,通过上述方法成功连接后,继续进行代码提交和页面部署。

请将所有的YourUsername替换成您实际的用户名,your_email@example.com替换为您的真实邮箱地址,yourusername替换为您在GitHub上的用户名,yourrepository替换为您实际的仓库名。

最后的最后

这是我新部署的个人网站,以后内容会在里面同步更新,有兴趣可以看看
在这里插入图片描述
通过https://zhengxuanye.github.io/访问,不过可能需要一点魔法,后续可能我也会部署到别的服务器当中


http://www.kler.cn/a/590427.html

相关文章:

  • 跨平台直播美颜SDK开发指南:如何兼容iOS、Android与Web
  • (笔记)Ubuntu 20编译Linux 4.19.262内核
  • Java创造型模式之原型模式详解
  • 基于 Docker 和 Flask 构建高并发微服务架构
  • uni-app+SpringBoot: 前端传参,后端如何接收参数
  • 解决git init 命令不显示.git
  • [特殊字符] 深度实战:Android 13 系统定制之 Recovery 模式瘦身指南
  • C++笔记-类和对象(下)
  • 苹果计划为 AirPods 配备实时对话翻译功能,或随 iOS 19 上线
  • 鸿蒙开发:什么是ArkTs?
  • 用旧的手机搭建 MQTT Broker-Node_red
  • 【Linux系列】文件压缩
  • 【前端效果】CSS实现动态渐变背景动画
  • 前端面试:babel-runtime 作用是啥?
  • 信创环境下TOP5甘特图工具对比:从功能到适配性测评
  • 蓝桥杯Python赛道备赛——Day7:动态规划(基础)
  • C++ map set pair
  • 《论分布式系统架构设计及其应用》架构师论文
  • Qt-QChart实现折线图
  • [贪心算法]-最大数(lambda 表达式的补充)