文档章节

还在用 Git 的 -f 参数强推仓库,你这是在作死!

红薯
 红薯
发布于 2018/09/23 09:53
字数 599
阅读 4199
收藏 1
Git

最近,美国一个程序员因为同事不写注释,代码不规范,最严重的是天天使用 git push -f 参数强行覆盖仓库,该程序员忍无可忍向四名同事开抢,其中一人情况危急!!!(此信息后来证实枪击事件的确发生,但并非代码原因,但从另外的角度也可看出强推代码所引发的后果让人非常愤怒)

不写注释、代码不规范是一个非常普遍的问题,其严重性还不足以导致枪击事件发生,毕竟算是个人行为,不会对别人的工作产生大的破坏作用。但是 git push -f 的仓库强推参数,则直接导致别人辛辛苦苦编写的代码付之一炬。这种被删代码的愤怒之心想必有过此遭遇的人都深有体会。

但是我们在谴责这种强行推送仓库的行为之时也应该注意到,有挺大一部分开发人员对 -f 参数所产生的破坏并不知晓,另外也可能可能存在一些无心的误操作。而我们宁愿相信绝大多数人并不会恶意强行覆盖同事的仓库,他们只是在遇到代码冲突时无所适从,再加上网上一些文章的误导,只要能解决推送,就不顾及任何后果。

由于很多用户跟我们反馈各种因为强推导致仓库被重置、代码被删除、提交记录消失等问题,甚至还有用户直接甩锅给平台,认为是平台的故障导致他们仓库出现问题,这让我们意识到不应该再做壁上观,于是码云限制强推的功能就推出了:

珍爱生命,远离强推。想了解更多关于“限制强推”的功能请访问 https://blog.gitee.com/2018/08/09/git_push_unallowed/

© 著作权归作者所有

共有 人打赏支持
红薯

红薯

粉丝 21038
博文 132
码字总数 48020
作品 8
深圳
产品经理
私信 提问
加载中

评论(9)

红薯
红薯

引用来自“魔力猫”的评论

已经被证实,这条新闻是假新闻!枪击是真的,但是原因没有报道说是代码Pull造成的。
文中已经备注
魔力猫
魔力猫
已经被证实,这条新闻是假新闻!枪击是真的,但是原因没有报道说是代码Pull造成的。
mia0x75
mia0x75
我是说在座的各位 :p
mark35
mark35

引用来自“Feng_Yu”的评论

😄反正自己的仓库我经常用push -f回滚代码仓库,merge request就免了。养成良好的工作习惯,在自己的仓库把commit规整好,剔除掉垃圾commit(reset + push -f),然后再向上游发起pull request/merge request,整个分支图就非常好看
reset并不适合频繁使用。你这个场景可以采用 分支+rebase+压缩提交 的方式来实现。
mark35
mark35
不给RW+权限就行了呗
Joyzhou
Joyzhou
愤怒的刷了一波广告
Feng_Yu
Feng_Yu
😄反正自己的仓库我经常用push -f回滚代码仓库,merge request就免了。养成良好的工作习惯,在自己的仓库把commit规整好,剔除掉垃圾commit(reset + push -f),然后再向上游发起pull request/merge request,整个分支图就非常好看
jack19920125
jack19920125
学了个新命令git push -f,啥时候试试
Skyogo
Skyogo
好一波广告
Git错误non-fast-forward后的冲突解决

http://blog.csdn.net/chain2012/article/details/7476493 问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方...

chuiyuan
2014/08/24
0
0
git push 报non-fast-forward updates were rejected 错误

错误: 解决办法: 1,强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容 git push -f -u origin master 2,先把git的东西fetch到你本地然后merge后再push $ git fetch $ git merge...

郭恩洲_OSC博客
2017/10/26
0
0
git养成记之二

前几天经过大佬们的提醒,发现是强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容,所以说是一个比较可怕的命令,和一样可怕😨 但是如果你不强推,可能就出现了这样的错误 当要p...

Jimmy
2017/05/27
0
0
Git错误non-fast-forward后的冲突解决

当要push代码到git时,出现提示: error:failed to push some refs to ... Dealing with “non-fast-forward” errors From time to time you may encounter this error while pushing: $ g......

cyper
2013/09/29
0
0
如何控制 Git 库的膨胀? GC 一步搞定!

相信每个公司都有自己的官网。小明公司也不例外,不过小明却发现公司的“猿”哥哥将许多视频放在了代码仓库里,导致原本只有代码的仓库从早期的几十MB,飙升至 1G以上,变得无比臃肿(或者是慢...

码云Gitee
2018/09/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java框架学习日志-13(Mybatis基本概念和简单的例子)

在mybatis初次学习Mybatis的时候,遇到了很多问题,虽然阿里云的视频有教学,但是视频教学所使用的软件和我自己使用的软件不用,我自己用的数据库是oracle数据库,开发环境是idea。而且视频中...

白话
今天
3
0
Java基础:String、StringBuffer和StringBuilder的区别

1 String String:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。 String类的包含如下定义: /** The value is used for character storage. */private final cha...

watermelon11
今天
2
0
mogodb服务

部署MongoDB 官网: https://www.mongodb.com/download-center/community 创建mongo数据目录 mkdir /data/mongodb 二进制部署 wget -c https://fastdl.mongodb.org/linux/mongodb-linux-x8......

以谁为师
昨天
5
0
大神教你Debian GNU/Linux 9.7 “Stretch” Live和安装镜像开放下载

Debian项目团队于昨天发布了Debian GNU/Linux 9 "Stretch" 的第7个维护版本更新,重点修复了APT软件管理器中存在的安全漏洞。在敦促每位用户尽快升级系统的同时,Debian团队还发布了Debian ...

linux-tao
昨天
4
0
PHP 相关配置

1. php-fpm的pool 编辑php-fpm配置文件php-fpm.con vim /usr/local/php/etc/php-fpm.conf //在[global]部分增加以下内容 include = etc/php-fpm.d/*.conf # 相当与Nginx的虚拟主机文件 “vho......

Yue_Chen
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部