从零开始建个小站 - 2. 拉取仓库到本地
前面的准备工作已完成,剩下就是将仓库文件克隆同步到本地电脑,方便后续维护与预览。
2.1 git clone
本站方案
只需要维护私有源码仓库
,所以只需要将私有源码仓库
克隆到本地使用即可,网页会自动发布到对外展示服务仓库对应分支,用户名和对外展示仓库不删不改就行。如果改了 GItHub 用户名,请参考 从零开始建个小站 - 常见问题 中
要修改网址怎么办
中提及项做相应修改。
还是在 Git Bash
中,输入这样的命令:
1 | cd d:\Git #先切换到要存放Git文件的目录路径 |
如果第一次克隆时未带 --recurse-submodules
参数或者没有完整完成,可以 在源码仓库根目录路径下
运行以下命令继续完成子模块更新:
1 | #请在仓库根目录路径下运行以下命令 |
以上命令中请将 源码仓库地址
换成自己的源码仓库实际地址,建议从仓库页面上复制。
仓库地址获取方法:打开源码仓库主页》在文件列表右上方有个 Code
,点击下拉复制,如下图所示可选择 HTTPS
「首选」 或 SSH
:
第一次使用 GitHub 账号需要授权,默认会有如下图授权提示弹窗,选择从浏览器登录授权,打开浏览器后按提示输入账号密码登录后点击授权,直到出现授权成功的提示就表示授权成功。
如果由于网络原因,
HTTPS
协议无法拉取/推送仓库,可尝试使用SSH
协议
已拉取的仓库修改协议:用文本编辑器打开仓库目录下的
.git/config
修改对应url = 复制的仓库地址
,别修改错了!如果涉及到
submodules
,也请在.gitmodules
中将子模块项目一并修改为SSH
地址
如果要使用 SSH
协议链接,需要先配置 SSH
连接密钥。当前 GitHub 强制用户使用超长随机串密码,需要遵循规则使用 SHA-2
签名规则密钥。
2021年8月14号开始,GitHub弃用账密验证Git操作,改用token或SSH密钥
GitHub 在 2022 年 3 月 15 日通过删除较旧的不安全密钥类型提高了安全性,不再支持 DSA 密钥 (ssh-dss
)。
在 2021 年 11 月 2 日之前 valid_after
的 RSA 密钥 (ssh-rsa
) 可以继续使用任何签名算法。 在该日期之后生成的 RSA 密钥必须使用 SHA-2 签名算法。 某些较旧的客户端可能需要升级才能使用 SHA-2 签名。
生成 SSH 密钥对
打开 Git Bash Here
或者系统终端,通过以下命令生成私钥和公钥:
1 | # 生成密钥对,一路回车默认即可 |
如果您使用的是不支持 ed25519
算法的旧系统,请使用:
1 | ssh-keygen -t rsa -b 4096 -C "Your_Email" |
更多密钥相关详细信息可参阅 GitHub官方文档
如果你是一路回车生成密钥对,那么生成的密钥对会保存在:~/.ssh/
目录下,~
表示用户目录,如操作系统登录用户名是 xyz
,那么在 Windows 下路径一般为 C:\Users\xyz\.ssh
,macOS/Linux下路径为 /home/xyz/.ssh
,其中:
1 | ~/.ssh/id_ed25519 //私钥,保存在本地 |
至此,本地 Git 认证环境已准备妥当,下一步将公钥配置到 GitHub 中就能使用了。
配置到 GitHub
为了使用方便,直接给 GitHub 添加一个用户密钥,一个密钥可作用于整个账号的增删改查操作。
-
将 SSH 公钥内容复制到剪贴板「假设都按前面的默认操作」
Windows
打开
Git Bash Here
,复制粘贴如下命令1
2clip < ~/.ssh/id_ed25519.pub
//该命令自动将公钥存到剪贴板,直接用文本编辑器打开公钥再复制也是一样的macOS/Linux
打开
Terminal
(终端),复制粘贴如下命令:1
2cat ~/.ssh/id_ed25519.pub
// 执行完将打印出来的公钥内容完整复制待用 -
登录GitHub账号后,在任何页面的右上角,单击右上角个人资料照片,然后单击弹出下拉中的
Settings(设置)
-
选择左侧
Access
》 点击SSH and GPG keys
,点击New SSH key(新 SSH 密钥)
-
在
Title
(标题)字段中,为新密钥添加描述性标签便于识别用途。 例如,如果您使用在个人Mac上,此密钥名称可能是Personal MacBook
。 -
将前面复制的公钥串粘贴到
Key
(密钥)字段 -
最后点击
Add SSH key(添加 SSH 密钥)
完成添加
2.2 安装依赖包
仓库中只包含网站必须的内容源码文件,一些依赖包文件是忽略提交的,所以本地需要重新安装,在仓库 根目录路径下
运行以下命令:
1 | npm install |
以上命令实际上是下载 package.json
中定义好的依赖包,等依赖包下载完成,整个本地预览环境就全部安装完成了。
2.3 预览测试
在仓库 根目录路径下
运行 hexo s
即可启动预览服务:
1 | user@IAY MINGW64 /d/Git/action-hexo (main) |
以上输出信息中,/d/Git/action-hexo (main)
就是所谓 运行路径
,Windows系统表示 d:\Git\action-hexo
目录,当前在 main
分支。
浏览器中打开 http://localhost:4000
就可以预览,按 Ctrl+C
组合键停止预览服务,一些主题或者网站设置变更需要重启该预览服务才能看到效果。
2.4 用得到的命令
hexo server
:开启本地预览服务,默认端口4000
,可以添加-p port
指定预览端口,Ctrl + C
关闭,一些网站更改需要重启预览才能看到效果hexo new "postName"
:新建文章,postName
不建议是中文,也不要添加特殊符号,生成MarkDown 文件在source/_post
目录下,hexo new
默认新生成的就是post
类型hexo new page "pageName"
:新建页面,会在source
目录下生成pageName
文件夹及对应index.md
上面用到的命令对应缩写:
1 | hexo s == hexo server |
更多命令可自行学习
1 | hexo help # 查看帮助 |