diff --git a/content/about-git.md b/content/about-git.md index a3f27bb..7717640 100644 --- a/content/about-git.md +++ b/content/about-git.md @@ -201,6 +201,50 @@ git push origin main ``` git pull ``` + +> Verified + +在 GitHub 的 commit 历史中看到的 “Verified” 标记,表示该提交是经过 签名验证(signed commit) 的,也就是 GitHub 能确认这个 commit 的确是由声明的提交者(你)签名并发布的。可以通过GPG或者SSH配置: + +- GPG方式 + +``` +sudo pacman -S gnupg //安装 GPG +gpg --full-generate-key //生成 GPG 密钥 +gpg --list-secret-keys --keyid-format=long //查看你生成的密钥 ID +git config --global user.signingkey ABCDEF1234567890 //让 Git 使用该密钥签名 +git config --global commit.gpgsign true //启用自动签名所有提交 +gpg --armor --export ABCDEF1234567890 //导出公钥并添加到 GitHub +``` +然后前往``GitHub → Settings → SSH and GPG keys → New GPG key``粘贴并保存。 + +- SSH方式 + +可以用你平时登录 GitHub 的同一个 SSH 密钥: +``` +git config --global gpg.format ssh //让 Git 使用 SSH 格式签名 +git config --global user.signingkey ~/.ssh/Github.pub //指定使用的 SSH 公钥 +git config --global commit.gpgsign true //表示自动签名所有提交 +``` +然后前往``Settings → SSH and GPG keys → New SSH key → Signing key``粘贴并保存。 + +- 本地查看 + +首先创建这个文件: +``` +mkdir -p ~/.ssh +nano ~/.ssh/allowed_signers +``` +写入你的 ``test@mail.com ssh-ed25519 AAAABBBBBBBBBBBBBBBBxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx``并保存。 +随后配置Git信任该文件: +``` +git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signers +``` +随后使用``git log --show-signature``即可查看本地log中的 +``` +Good "git" signature for test@mail.com with ED25519 key SHA256:ssh-ed25519 AAAABBBBBBBBBBBBBBBBBBBBB +``` + ## 合并分支 分支是用来将特性开发绝缘开来的。比如你在本地的test分支新增了一个功能,想要合并到主分支中。 @@ -378,6 +422,16 @@ git log --pretty=oneline ``` git log --name-status ``` +## 生成补丁 + +比如你修改了项目中的``fs/proc/base.c``,然后 + +``` +git add fs/proc/base.c +git commit -m "fix:base" +git format-patch origin/16.0 +``` +即可在目录下生成补丁``0001-fix-base.patch``. ## 删除前一个提交记录 有时候手滑或者不想使用一个commit说明,可以用以下命令撤销上一个 commit: diff --git a/public/about-git/index.html b/public/about-git/index.html index 7c23037..8527db7 100644 --- a/public/about-git/index.html +++ b/public/about-git/index.html @@ -313,6 +313,44 @@
如果你的远程仓库是最新的,可以使用以下命令更新本地仓库:
git pull
+++Verified
+
在 GitHub 的 commit 历史中看到的 “Verified” 标记,表示该提交是经过 签名验证(signed commit) 的,也就是 GitHub 能确认这个 commit 的确是由声明的提交者(你)签名并发布的。可以通过GPG或者SSH配置:
+sudo pacman -S gnupg //安装 GPG
+gpg --full-generate-key //生成 GPG 密钥
+gpg --list-secret-keys --keyid-format=long //查看你生成的密钥 ID
+git config --global user.signingkey ABCDEF1234567890 //让 Git 使用该密钥签名
+git config --global commit.gpgsign true //启用自动签名所有提交
+gpg --armor --export ABCDEF1234567890 //导出公钥并添加到 GitHub
+
+然后前往GitHub → Settings → SSH and GPG keys → New GPG key粘贴并保存。
可以用你平时登录 GitHub 的同一个 SSH 密钥:
+git config --global gpg.format ssh //让 Git 使用 SSH 格式签名
+git config --global user.signingkey ~/.ssh/Github.pub //指定使用的 SSH 公钥
+git config --global commit.gpgsign true //表示自动签名所有提交
+
+然后前往Settings → SSH and GPG keys → New SSH key → Signing key粘贴并保存。
首先创建这个文件:
+mkdir -p ~/.ssh
+nano ~/.ssh/allowed_signers
+
+写入你的 test@mail.com ssh-ed25519 AAAABBBBBBBBBBBBBBBBxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx并保存。
+随后配置Git信任该文件:
git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signers
+
+随后使用git log --show-signature即可查看本地log中的
Good "git" signature for test@mail.com with ED25519 key SHA256:ssh-ed25519 AAAABBBBBBBBBBBBBBBBBBBBB
+
分支是用来将特性开发绝缘开来的。比如你在本地的test分支新增了一个功能,想要合并到主分支中。
创建一个叫做“test”的分支,并切换过去:
@@ -483,6 +521,13 @@git log --name-status
+比如你修改了项目中的fs/proc/base.c,然后
git add fs/proc/base.c
+git commit -m "fix:base"
+git format-patch origin/16.0
+
+即可在目录下生成补丁0001-fix-base.patch.
有时候手滑或者不想使用一个commit说明,可以用以下命令撤销上一个 commit:
git reset --soft HEAD~1
diff --git a/public/pagefind/fragment/en_16db812.pf_fragment b/public/pagefind/fragment/en_16db812.pf_fragment
deleted file mode 100644
index 72dac22..0000000
Binary files a/public/pagefind/fragment/en_16db812.pf_fragment and /dev/null differ
diff --git a/public/pagefind/fragment/en_ad4c715.pf_fragment b/public/pagefind/fragment/en_ad4c715.pf_fragment
new file mode 100644
index 0000000..10f6aa8
Binary files /dev/null and b/public/pagefind/fragment/en_ad4c715.pf_fragment differ
diff --git a/public/pagefind/index/en_39e5240.pf_index b/public/pagefind/index/en_39e5240.pf_index
new file mode 100644
index 0000000..dd5c590
Binary files /dev/null and b/public/pagefind/index/en_39e5240.pf_index differ
diff --git a/public/pagefind/index/en_7d89685.pf_index b/public/pagefind/index/en_7d89685.pf_index
deleted file mode 100644
index 2712b41..0000000
Binary files a/public/pagefind/index/en_7d89685.pf_index and /dev/null differ
diff --git a/public/pagefind/index/en_85147a0.pf_index b/public/pagefind/index/en_85147a0.pf_index
deleted file mode 100644
index eb965e9..0000000
Binary files a/public/pagefind/index/en_85147a0.pf_index and /dev/null differ
diff --git a/public/pagefind/index/en_857bb10.pf_index b/public/pagefind/index/en_857bb10.pf_index
new file mode 100644
index 0000000..51469d0
Binary files /dev/null and b/public/pagefind/index/en_857bb10.pf_index differ
diff --git a/public/pagefind/index/en_9df17a3.pf_index b/public/pagefind/index/en_9df17a3.pf_index
new file mode 100644
index 0000000..df1cc20
Binary files /dev/null and b/public/pagefind/index/en_9df17a3.pf_index differ
diff --git a/public/pagefind/index/en_af5f91d.pf_index b/public/pagefind/index/en_af5f91d.pf_index
new file mode 100644
index 0000000..379384e
Binary files /dev/null and b/public/pagefind/index/en_af5f91d.pf_index differ
diff --git a/public/pagefind/index/en_cee394a.pf_index b/public/pagefind/index/en_cee394a.pf_index
new file mode 100644
index 0000000..01c6603
Binary files /dev/null and b/public/pagefind/index/en_cee394a.pf_index differ
diff --git a/public/pagefind/index/en_da205af.pf_index b/public/pagefind/index/en_da205af.pf_index
deleted file mode 100644
index 27bc77f..0000000
Binary files a/public/pagefind/index/en_da205af.pf_index and /dev/null differ
diff --git a/public/pagefind/index/en_e93083a.pf_index b/public/pagefind/index/en_e93083a.pf_index
deleted file mode 100644
index c746229..0000000
Binary files a/public/pagefind/index/en_e93083a.pf_index and /dev/null differ
diff --git a/public/pagefind/index/en_f03843f.pf_index b/public/pagefind/index/en_f03843f.pf_index
deleted file mode 100644
index 5d8b597..0000000
Binary files a/public/pagefind/index/en_f03843f.pf_index and /dev/null differ
diff --git a/public/pagefind/pagefind-entry.json b/public/pagefind/pagefind-entry.json
index 4ce2228..14988fc 100644
--- a/public/pagefind/pagefind-entry.json
+++ b/public/pagefind/pagefind-entry.json
@@ -1 +1 @@
-{"version":"1.3.0","languages":{"en":{"hash":"en_1515ccaa8c","wasm":"en","page_count":77}}}
\ No newline at end of file
+{"version":"1.3.0","languages":{"en":{"hash":"en_1db5ef9be9","wasm":"en","page_count":77}}}
\ No newline at end of file
diff --git a/public/pagefind/pagefind.en_1515ccaa8c.pf_meta b/public/pagefind/pagefind.en_1515ccaa8c.pf_meta
deleted file mode 100644
index 00d2297..0000000
Binary files a/public/pagefind/pagefind.en_1515ccaa8c.pf_meta and /dev/null differ
diff --git a/public/pagefind/pagefind.en_1db5ef9be9.pf_meta b/public/pagefind/pagefind.en_1db5ef9be9.pf_meta
new file mode 100644
index 0000000..59cec2a
Binary files /dev/null and b/public/pagefind/pagefind.en_1db5ef9be9.pf_meta differ