前段时间看到可以通过修改git的邮箱实现,实现伪造记录,但是修改起来还挺麻烦的,大佬的账号不能在命令行中保存,遂做了一个命令行工具,专门用来伪造github的提交请求。😎
先看效果
伪造了当年TJ大佬的提交记录
是不是很想要TJ大神的力量
来吧,全局安装完,直接敲命令就能实现
# 全局安装 git-fake
npm install git-fake -g
# 看看是否安装成功
gitfake -V
# 在项目根目录使用TJ的邮箱(只对该项目生效)
# 如果要伪造别人的账号,直接在github看邮箱即可
gitfake -u tj@apex.sh
# 对于使用过的账号,直接就能选择
gitfake -c
剩下的工作就是在这个项目提交代码了,提交完成后可以使用"git log"命令查看提交记录的邮箱是否被修改,如下
缺点
不过假的终究是假的,努力提升自己水平才是王道啊
装逼的被 GPG 劈了就来找楼主~~
@waitingsong 一般人也不看verified小标识 况且我都把缺点写的这么大了🐶
这可不好
@atian25 写这个也更多是当成学习工具,最后也说了假的终究是假的,没有意义。当然黑武器也是可以用于正义的。 比如这个场景: 同事自己电脑不方便改,在我电脑改了代码,但我又不想以自己名义提交,我就可以临时修改作者,用完后我再切回去,这样会方便一些
@zy445566 我所有提交 包括公司项目 全部有 GPG 签名, 避免 “雷锋” 帮我工作。。
@zy445566 你这场景就是用 git 指令而已,应该用不上这样的工具。我是担心这工具传播了被滥用。譬如某天有人伪装成小右给 react 发个 PR。
不评论这个项目,但是作假这种事还是不要碰
@zy445566 就是修改git config?
@atian25 egg 的也没有
@waitingsong 没有啥? GPG ?
不可取不可取
@atian25 嗯 GPG
@waitingsong 有的,不过没强制,我们都是 MR 的方式,问题不大,就不强制。
@atian25 奇怪 egg github 上没看到 verified 标志。。。 估计页面开错了。
@waitingsong 如果是直接在 Web 上操作的,是会这样:
手动 rebase 修改 commit author 就好啦,哈哈
@atian25 我在思考 github/gitlab 网页版做 merge 时如何GPG签名的时候忽然想起来当时查看 egg 库是 merge 合并日志,这个合并是(你们)在 github 页面操作的,所以没有 GPG 签名。 那么, 网页版有支持 -S 签名吗?
@waitingsong 你看我最后那张图
@atian25 明白,提交支持。 不过上图中 6bf812 这个合并是通过github网页版操作的,这个就不会有签名了吧。
@waitingsong 可以看下官方文档,印象中是可以配置的,没关注
@atian25 应该需要上传私钥。不过合并提交强签名的场合很少。
这是我最近最水的技术贴了,求不顶。好羞耻! 虽然我也无所谓水货和造假的帽子,呃。。。
@zy445566 git commit --author=
@zy445566 娱乐贴 尚好。不宜推广。
这太气人了!这种造假的事情都能被当成“娱乐”了? 有这闲工夫还是多跟大神们多交流吧。 比如 ry 给我提交的 2 个 commits 都是我发邮件沟通的结果 https://github.com/yorkie/tensorflow-nodejs/commits?author=ry