Github
Port 443
如果没有做过其他配置,会遇到过连不上、代码推不上去的报错。
在计算机网络里,SSH 协议默认走的是 22 号端口。 但是,很多学校的校园网、公司的内网、或者管得比较严的公共 Wi-Fi,为了防范网络攻击,会由网络管理员在路由器上把 22 号端口给死死封住(不允许内网机器去 SSH 连接外网)。
GitHub 官方提供了一个“后门”——443 端口。 443 端口是用来浏览普通网页(HTTPS)的,任何网络都不可能封杀它(封了就上不了网了)。所以,只要把 SSH 的流量伪装成网页流量从 443 端口挤出去,就能成功连上 GitHub。
所以在 C:\Users\用户名\.ssh\config 中:
就有了这个配置,不过连不上的问题可以用其他解决办法配置 ssh keys
然后就生成好了,看一下生成的密钥是什么 然后在 Github 操作,添加上这个 ssh key然后可以测试和 Github的链接
如果连接成功,会显示:
Hi Jambit-X! You've successfully authenticated, but GitHub does not provide shell access.
Github Actions & Workflows
GitHub Actions 是 GitHub 内置的 CI/CD(持续集成/持续部署,Continuous Integration) 工具,可以在每次 push 代码时自动执行脚本。
基本概念
| 名词 | 含义 |
|---|---|
| Workflow | 一个自动化流程,写在 .yml 文件里 |
| Job | Workflow 中的一个任务,运行在一台虚拟机上 |
| Step | Job 中的一个步骤,可以是命令或别人写好的 Action |
| Action | 可复用的步骤模块,如 actions/checkout |
| Runner | 执行 Job 的虚拟机,常用 ubuntu-latest |
文件路径
Workflow 文件必须放在这个路径,否则不会被触发:
.github/workflows/你的文件名.yml
触发条件
为 MkDocs 配置自动部署
每次 push 后自动构建并发布到 GitHub Pages:
name: ci
on:
push:
branches:
- master
- main
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: 3.x
- uses: actions/cache@v4
with:
key: ${{ github.ref }}
path: .cache
- run: pip install mkdocs-material mkdocs-awesome-pages-plugin
- run: mkdocs gh-deploy --force
mkdocs gh-deploy --force 会自动把构建产物推送到仓库的 gh-pages 分支。
Github Pages
GitHub Pages 是 GitHub 提供的静态网站托管服务,免费部署你的网站。
开启方式
仓库 → Settings → Pages → Source 选择分支
两种类型
| 类型 | 仓库命名规则 | 访问地址 |
|---|---|---|
| User/Org Pages | 用户名.github.io | https://用户名.github.io/ |
| Project Pages | 任意名称 | https://用户名.github.io/仓库名/ |
本站使用的是 User Pages
仓库名为 jambit-x.github.io,所以直接通过 https://jambit-x.github.io/ 访问,不带子路径。
发布源
gh-pages 分支:
MkDocs 的 gh-deploy 命令会自动创建并推送到这个分支,在 Pages 设置里选它即可。
gh-pages 分支由 CI 自动维护,不需要手动修改。