Host site 有两个托管个人站点的网站:Github pages
和reathedocs
.
Github Pages 使用github pages 可以搭建个人主页。
github pages简介:官方链接 。
github pages使用了CNAME record 技术,参考:链接1 、链接2 、Custom domains in Github Pages 。
注:Read the Docs 也是一个很好的搭建个人主页的网站。
Github Pages 站点类型 有3种类型的 Github Pages 站点(sites):project, user 和 organization 。
Project sites 连接到 github 上特定 project ,比如 Javascript library 或 recipe collection。user 或 organization sites 连接到 github.com 的特定账户。
发布 user site ,你必须创建一个你的个人账户下的一个名为 <username>.github.io
的 repository 。发布 organization site ,你必须创建一个组织所有的名为 <organization>.github.io
的 repository 。除非你使用 custom domain ,否则 user 和 organization sites 将位于 http(s)://<username>.github.io
或 http(s)://<organization>.github.io
。
project site 的源文件存储在作为 project 的相同的 repository 中。除非使用 custom domain , 否则 project sites 将位于 http(s)://<username>.github.io/<repository>
或 http(s)://<organization>.github.io/<repository>
。
有关如何自定义影响您网站的域名的更多信息,参见”About custom domains and GitHub Pages “。
每个 github 账户允许创建 1 个 user 或 organization 站点。无论是被组织还是个人所有,project 站点的个数不限制。
GitHub Pages 访问方法 参考官方文档 。
例如,你的project站点配置的发布源是gh-pages
分支,然后在gh-pages
分支上创建了一个about/contact-us.md
文件,你将可以在https://<user>.github.io/<repository>/about/contact-us.html
访问它。
你也可以使用Jekyll
等静态站点生成器来给你的github page配置一个主题。
站点发布常见问题的解决方法
Github workflows 参考官方文档 。
Github个人访问令牌 Github个人访问令牌
readthedocs Similar to the github pages.
Tutorial
配置前准备 Markdown编辑器 推荐的markdown编辑器 :
VSCode:免费。VSCode原生支持Markdown,安装一些插件可以帮助更快地编写markdown文件。
Typora:现在已经开始收费。
VSCode markdown插件:
Mardown All in One: 提供快捷键,帮助更快的编写markdown文件。
Markdown+Math:提供数学公式支持。
Markdown Preview Enhanced: 将原生markdown预览的黑色背景改成白色。
Markdown Preview Github Styling:提供Github风格的预览。
在线表格生成器 :可以生成Markdown、Text、HTML、LaTex、MediaWiki格式的表格。
轻量级虚拟机WSL WSL,Windows Subsystem for Linux ,是Windows提供的轻量级Linux虚拟机。
安装教程:见链接 。
WSL默认没有启用systemctl: 启用systemctl的方法:链接 。
替代方法:不需要启动systemctl,因为会比较占用资源,启动也会变慢。可以使用service命令替代。
WSL默认没有安装openssl-server: 使用ssh连接到服务器时,需要服务器运行着sshd程序,否则连接不上,会出现”Connection refused “错误。
参考链接 。
查看openssh-server有没有安装:
注:如果安装了openssh-server,执行which sshd可以看到路径。
WSL默认没有安装openssh-server,安装方法:
1 sudo apt-get install openssh-server
启动ssh:
ssh-keygen 1 2 ssh-keygen -f "/home/<user>/.ssh/known_hosts" -R "ubuntu"
通过https登录到github git push
不再支持输入用户名和密码,当提示输入密码时,需要输入personal access token.
步骤1:在github上创建personal access token ;
步骤2:在命令行上使用personal access token ;
步骤3:为了避免每次都需要输入personal access token,可以将其缓存在git client上 :
注:使用gh
命令需要先安装GitHub CLI:
WSL常见问题
在WSL的Linux下,在.bashrc中加入:
1 2 3 4 function browser () { explorer.exe $(wslpath -w $(realpath $1 )) } export -f browser
打开html:
静态站点生成器 以下几种静态站点生成器 都可以用来搭建个人主页。如果使用除JekyII外的工具,则需要配置Github Actions 以构建和发布你的站点。
mkdocs mkdocs 是一个快速的静态网页生成器。
mkdocs.yml
文件是 MkDocs 文档生成器的配置文件,其格式说明参见这里 。
JekyII Jekyll 是一个静态站点生成器,内置对 GitHub Pages 的支持和简化的构建进程。
参见 About GitHub Pages and Jekyll 。
Hexo
Sphinx Install Sphinx Hosting the documentation
python python建立个人站点
python -m http.server
Syntax Markdown
reStructuredText .rst
Markdown 文档写作助手 VS Code + Markdown 插件:
Markdown All in One:快捷键、自动列表、格式化支持。
markdownlint:格式规范检查,可配合 .markdownlint.json 使用。
Markdown Preview Enhanced:支持公式、流程图、导出 PDF。
图床工具:
iPic(macOS)或 PicGo(全平台):自动上传图片并生成 Markdown 链接。
国内外常用免费图床推荐
图床名称
特点与限制
适合场景
SM.MS
免费、支持 API、最大上传 5MB,全球 CDN 加速2
技术博客、Markdown
Imgur
老牌国外图床,支持匿名上传、API,国内访问速度较慢2
海外博客、论坛
路过图床
支持 HTTPS、免注册、永久存储,最大上传 10MB
Markdown、公众号
聚合图床
上传后自动分发至多个图床,支持多种格式
多平台分发
PostImage
国外图床,最大上传 24MB,支持 BBCode/HTML/Markdown 链接
技术论坛、社交媒体
UPLOAD.CC
香港图床,支持 Chrome 插件、最大上传 10MB
博客写作
ImageHub.cc
全球 CDN 加速,最大上传 10MB,支持多地备份
稳定性要求高的场景
Markdown 插图:推荐 SM.MS、路过图床,支持直接生成 格式链接。
国内访问速度:微博图床仍是最快之一,但需借助工具(如 iPic)上传。
稳定性优先:Imgur 和 PostImage 在国外非常稳定,适合长期托管。
自动化上传:PicGo + SM.MS 是最常见的组合,支持 VS Code 插件集成。
表格生成器:
美化内容:图文辅助
Carbon / Polacode:生成美观的代码截图。
draw.io / ProcessOn:绘制流程图、架构图、UML 图。
Canva / Figma:制作封面图、插图、社交媒体配图。
写作后:发布与分发
自建站:WordPress、Hexo、Hugo(推荐 GitHub Pages 托管)
排版工具:
mdnice:自动美化 Markdown,适配知乎/公众号。
Aclickall:一键生成公众号排版样式。
多平台分发工具:
BlogHelper:支持一键发布到多个平台。
大型文件存储 图片 Postimages
视频 TinyPic (由 Photobucket 提供)
网站: https://tinypic.com/
特点:
支持上传并生成快速共享链接。
上传后,链接可以嵌入到社交媒体、论坛、博客中。
图片和视频都支持托管,但TinyPic已关闭,现由Photobucket服务接管。
Git LFS GitHub 提供的用于存储大型文件的服务叫 Git LFS(Git Large File Storage)。
什么是 Git LFS? Git LFS 是一个 Git 扩展,用于处理 Git 仓库中的大型文件(如图片、视频、音频等),它通过将大型文件存储在 GitHub 的独立存储区来解决 Git 的性能瓶颈。
Git LFS 的免费额度: GitHub 为免费账户提供一定的 LFS 存储和带宽额度:
免费存储:每个 GitHub 账户提供 1GB 的 LFS 存储。
免费带宽:每个月 1GB 的下载带宽。
如果超出免费额度,你可以选择购买更多的存储和带宽。
Git LFS 的工作原理: 文件替代:Git LFS 用一个指向大文件的指针来替代文件内容,将文件本身存储在 GitHub 提供的 LFS 存储空间中。
文件存储:实际的文件内容存储在 GitHub 的 LFS 存储中,Git 只会管理这些文件的指针。
下载/上传:当你从仓库克隆或拉取代码时,Git LFS 会自动下载大文件,反之,当你提交大文件时,Git LFS 会将其上传到 GitHub。
如何使用 Git LFS?
安装 Git LFS: 首先需要安装 Git LFS,可以通过 Git LFS 官方网站 下载和安装。
初始化 Git LFS: 在你的 Git 仓库中初始化 Git LFS。
1 2 3 4 5 git lfs track "*.jpg" git add .gitattributes git add <large-file> git commit -m "Add large file" git push origin main
使用 Git LFS 进行提交: 每次提交时,Git LFS 会自动处理大文件,并将它们上传到 GitHub LFS 存储区。
优势: 减少仓库体积:通过将大文件存储在 Git LFS 中,可以避免将大文件直接存储在 Git 仓库中,从而提高 Git 的性能。
适用于大文件:适合管理图像、视频、二进制文件等大型文件,避免 Git 克隆和拉取过程变得过于缓慢。
总结: Git LFS 是 GitHub 提供的用于管理和存储大型文件的扩展服务,适合存储需要频繁更改或管理的大文件(如图片、音频、视频等)。