防伪造GitHub提交:https://blog.csdn.net/duke56/article/details/86498558 [供参考]

 

伪造提交过程

[dem-PC@dem]$git init
已初始化空的 Git 仓库于 /home/dem/dem/.git/
[dem-PC@dem]$git remote add origin  git@live86.github.com:live86/dem.git
[dem-PC@dem]$
[dem-PC@dem]$echo 1 >> tex.txt
[dem-PC@dem]$git config user.name dem        # 第一次提交的name和E-mail信息
[dem-PC@dem]$git config user.email leichixian@outlook.com
[dem-PC@dem]$git add tex.txt
[dem-PC@dem]$git commit -am "add 1"
[master(根提交) 8ebf4a5] add 1
 1 file changed, 1 insertion(+)
 create mode 100755 tex.txt
[dem-PC@dem]$echo 2 >> tex.txt
[dem-PC@dem]$git config user.name CSDN.com    # 修改一下第二次提交的name
[dem-PC@dem]$git commit -am "add 2"
[master d6e5f45] add 2
 1 file changed, 1 insertion(+)
[dem-PC@dem]$echo 3 >>tex.txt
[dem-PC@dem]$git config user.email
leichixian@outlook.com
[dem-PC@dem]$git config user.email dqfext@gmail.com    #修改一下第三次提交的E-mail
[dem-PC@dem]$git commit -am "add 3"
[master a197321] add 3
 1 file changed, 1 insertion(+)
[dem-PC@dem]$echo 4 >> tex.txt
[dem-PC@dem]$git config user.email abcd@abcd.CSDN    # 第四次随便改个没人用的E-mail
[dem-PC@dem]$git commit -am "add 4"
[master 9aa9113] add 4
 1 file changed, 1 insertion(+)
[dem-PC@dem]$git push -u origin master -f
对象计数中: 12, 完成.
Delta compression using up to 8 threads.
压缩对象中: 100% (4/4), 完成.
写入对象中: 100% (12/12), 830 bytes | 166.00 KiB/s, 完成.
Total 12 (delta 0), reused 0 (delta 0)
To live86.github.com:live86/dem.git
 + 37a82aa...9aa9113 master -> master (forced update)
分支 'master' 设置为跟踪来自 'origin' 的远程分支 'master'。
[dem-PC@dem]$
[dem-PC@dem]$git log
commit 9aa911359e47e1f14e19d595c4e85da5847b3f2d (HEAD -> master, origin/master)
Author: CSDN.com <abcd@abcd.CSDN>
Date:   Thu Jan 17 21:04:08 2019 +0800

    add 4

commit a197321f82289b767a25b63a67013150c1858cc6
Author: CSDN.com <dqfext@gmail.com>
Date:   Thu Jan 17 21:02:13 2019 +0800

    add 3

commit d6e5f459fcc0dd84116bf69fc68e0d3252f0ed6e
Author: CSDN.com <leichixian@outlook.com>
Date:   Thu Jan 17 21:00:03 2019 +0800

    add 2

commit 8ebf4a58e8239b6eb2810b0c0cf4d2ce5501172b
Author: dem <leichixian@outlook.com>
Date:   Thu Jan 17 20:58:08 2019 +0800

    add 1
[dem-PC@dem]$

GitHub上显效的提交

说明

第一次所提交的E-mail是网上找到有在GitHub上注册过的邮箱,user.name随便填写的

第二次更改了提交者的用户名(user.name)

第三次使用的user.email还是找了个在GitHub上注册过的邮箱

第四次为随便填写个没有在GitHub上注册过的邮箱

总结

GitHub上显示的提交信息是根据提交者在git config user.email 后面所填写的邮箱进行关联的,第二次修改了提交者的作者,仍然显示和第一次提交一样

再没有找到提交者在GitHub上的注册帐号时才会显示提交者所填写的user.name

 

为了安全起见,最好是使用GitHub官方所使用的GPG keys进行验证签名提交

 GitHub GPG keys 添加签名,进行认证 Verified认证  (如下图所示)

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐