跳转至

关于笔记本的搭建

约 924 个字 35 行代码 预计阅读时间 4 分钟

前言

博客使用腾讯云ubuntu系统搭建,采用mkdocs静态网页。

mkdocs

施工中

-施工中

git & github

配置SSH

1.在本地服务器上生成一个新的SSH密钥

ssh-keygen -t ed25519 -C "your_email@example.com"

当系统提示输入文件以保存密钥时,选择按Enter接受默认文件位置。然后提示输入一个可选的安全密码。如果不想每次使用SSH时都输入密码,可以选择留空并按Enter。

2.将新SSH密钥添加到ssh-agent

首先,确保ssh-agent正在运行:

eval "$(ssh-agent -s)"

然后添加你的SSH私钥到ssh-agent:

ssh-add ~/.ssh/id_ed25519

3.在GitHub上添加新的SSH密钥

复制SSH公式:

cat ~/.ssh/id_ed25519.pub

复制输出的内容。

在GitHub账户的设置中,找到“SSH and GPG keys”部分,点击"New SSH key"。

在"Title"字段中,输入描述密钥的名称。在"Key"字段中,粘贴公钥。然后点击"Add SSH key"。

使用git

全局配置

git config --global user.name  用户名 #设置用户签名
git config --global user.email 邮箱 #设置用户邮箱 建议使用和github账号相同的邮箱

其余git常用操作

参见git手册

将本地git仓库推送到github

git remote add origin git@github.com:YourUsername/YourRepository.git
git push -u origin master

如何避免推送特定文件夹?

可以使用.gitignore文件来告诉Git忽略这个文件夹。

.gitignore是一个特殊的文件,它告诉Git应该忽略哪些文件或文件夹。在MkDocs项目的根目录下,创建一个名为.gitignore的新文件,然后添加以下行:

/site

这行代码使得Git忽略site文件夹,不会将其添加到Git仓库。

如果site文件夹已经被添加到了Git仓库,使用以下命令来移除它:

git rm -r --cached site
git commit -m "Remove site folder from Git"

分支问题

git 本地的分支默认为master,而github中的默认主分支名字为main。

如果想要在github中只留下一个分支,需要先获取main分支

git fetch origin
然后切换到main分支
git checkout main
合并分支
git merge master
最后再推送。

如果显示冲突,通过以下合并方式解决:

git merge master --allow-unrelated-histories
git add .
git commit -m "Resolve merge conflicts"
git push origin main

自动化推送

提供一个简单的bash脚本示例。这个脚本会运行mkdocs build,然后自动添加所有的改动、创建一个新的commit,并将更改推送到GitHub。

在你的项目目录下创建一个新的文件,比如run.sh,并加入以下代码:

#!/bin/bash

# run mkdocs build
mkdocs build

# add changes to Git
git add .

# write down your commit
read -p "write down your commit " commit_message

# create new commit
git commit -m "$commit_message"

# push to GitHub
git push

为了让这个脚本可以执行,需要给它添加执行权限:

chmod +x run.sh
现在就可以通过运行这个脚本来一次完成需要的所有的操作了

./run.sh

admonition拓展

mkdocs中的admonition扩展可以生成不同样式的信息框,常用的用法如下:

注意框

!!! note
    这里是需要注意的内容

会生成:

Note

这里是需要注意的内容

提示框

!!! tip
    这里是提示内容

会生成:

Tip

这里是提示内容

警告框

!!! warning
    这里是警告内容 

会生成:

Warning

这里是警告内容

危险框

!!! danger
    这里是危险警告内容

会生成:

Danger

这里是危险警告内容

折叠框

???+ abstract "折叠框标题"
    这里是折叠框中的隐藏内容

会生成:

折叠框标题

这里是折叠框中的隐藏内容

在mkdocs的admonition扩展中,除了之前提到的notetipwarningdanger关键词外,还支持以下几种关键词来生成不同样式的信息框:

  • abstract - 摘要框
  • info - 信息框
  • success - 成功框
  • question - 问题框
  • failure - 失败框
  • bug - Bug框
  • example - 示例框
  • quote - 引用框

使用例子:

!!! question
    这里是问题内容

会生成:

Question

这里是问题内容

!!! example
    这里是示例内容

会生成:

Example

这里是示例内容

!!! quote
    这里是引用内容

会生成:

Quote

这里是引用内容

此外,也可以自定义信息框的标题,语法是在关键词后面加上信息框的标题文字,用引号括起来。