多次手贱使用 git reset --hard 和 git push -f 之类的命令造成损失,有什么办法可以阻止这些命令执行吗?

2018-10-24 20:39:23 +08:00
 littleMaple

例如:逆向 git.exe ,将二进制文件里面对应相关命令的部分篡改成“不执行,直接 return ”。

6090 次点击
所在节点    git
44 条回复
cchange
2018-10-24 22:13:00 +08:00
战略关注此帖
carlclone
2018-10-24 22:19:26 +08:00
多次手贱了你的脑子还不够阻止你执行吗? 居然还要想办法阻止
xor
2018-10-24 22:23:19 +08:00
@littleMaple
逆向的话,改几个字节就行了,但是找到该改哪个字节则是很困难的;
直接改源码也许要多改几个字节,但是找到它不需要吹灰之力
xor
2018-10-24 22:24:43 +08:00
然而手贱的解决方法是剁手
不然的话哪天自己的手把枪对准脑袋怎么办?毕竟管不了手的脑袋留着也没啥用对吧
thedrwu
2018-10-24 22:27:45 +08:00
reflog 里也没了?
ShadowStar
2018-10-24 22:36:25 +08:00
远程仓库配置“ receive.denyNonFastForwards = true ”
scnace
2018-10-24 22:49:34 +08:00
reflog 大法好!
ZxBing0066
2018-10-24 22:52:56 +08:00
reflog 了解下?
ZxBing0066
2018-10-24 22:54:52 +08:00
多说一句 手误能直接 git reset --hard 和 git push -f 还不知道 reflog 的人建议不要给 master 权限

仓库 push 权限控制还是要控制住的
ritaswc
2018-10-24 23:01:08 +08:00
git reset --hard 那是你傻逼
git push -f 那是你不懂 git,没学会用什么 git
littleMaple
2018-10-24 23:01:47 +08:00
@trait
@l1fan
@thedrwu
@scnace
@ZxBing0066

之前使用 git reset --hard 发生损失的情况就是因为 work directory 有 unstaged change 的情况下使用 hard reset 将会强行将 work directory 覆盖,按理来说 unstaged change 是不在 reflog 里面的吧
llillill
2018-10-24 23:27:42 +08:00
想请教下 git push -f 没有具体合理的使用场景吗
swulling
2018-10-24 23:29:15 +08:00
第一次听到逆向开源软件的骚操作和改一个零一串的高论。
hlwjia
2018-10-24 23:30:58 +08:00
把分支保护好就可以避免 force push 了呀

@llillill 真正明白 git 流程的人就会找到合适用的场景,比如我有强迫症,我在自己的分支上就可以用,而且确保我的分支上的东西没被合并到哪里。
scnace
2018-10-24 23:33:12 +08:00
@littleMaple reset --hard 真没试过 但是应该会有
trait
2018-10-24 23:34:00 +08:00
@littleMaple 好吧 push 什么的都是小事。可有改动至少也要 stash 一下再另行操作,直接 reset 真实
看你这种情况应该是不知道当前目录的 git 状态,建议你在 bash 里加上显示目录 git 信息的语句,很多 shell 也自带这个功能 zsh fish 什么的
比如 我的 bash prompt: /home [git_branch !], 这里的 !表示对文件做了改动但未提交,* 表示没和 upstream 同步
这样你就不会硬核操作了
trait
2018-10-24 23:36:06 +08:00
@llillill 有,比如 PR 和 upstream 出现冲突的时候(我很不喜欢用 merge ),rebase 到最新的 upstream/master,再 push -f
littleMaple
2018-10-24 23:42:08 +08:00
@swulling 确实是我想当然了,我本来以为只要在二进制文件里面找到那个节点然后添加一些表示 return 的东西就可以了,确实是很 naive 的想法
littleMaple
2018-10-24 23:47:05 +08:00
@xor
@ritaswc

大佬批评的是,我确实应该反省自己、多多学习扎实之后再实作;
littleMaple
2018-10-24 23:52:16 +08:00
@trait 确实是很有用的一个方法,对我来说非常新颖的一个角度;

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/500804

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX