当前位置: 首页 > news >正文

GitLab 禁用 Windows!

整理 | 郑丽媛

出品 | CSDN(ID:CSDNnews)

作为 GitHub 的重要竞争对手,GitLab 自成立以来就一直与其在源码库市场上进行争夺。尤其当微软在 2018 年以 75 亿美元收购了 GitHub 后,GitLab 便适时推出了迁移功能,使许多开发者纷纷转向 GitLab,GitLab 由此迅速成长,于去年 10 月成功上市,首日收盘价便高达 103.89 美元。

或许是因为 GitHub 与 GitLab 之间的竞争太过“直白”,网友很容易就将其中某一方的行为进行联想,例如:最近曝出 GitLab 禁止员工使用 Windows,是不是因为 GitHub 也是微软的?

f52590cbdfce1a92c70b17c71ca83193.jpeg

8ea114894eb6696228b7e2be5e0ac9eb.png

“禁止使用微软的 Windows”

据 GitLab 官网介绍,自成立的这十年来,GitLab 始终都在坚持开源开放,“从一群拥有自己笔记本电脑的编码人员,逐渐成为不仅需要保护自己的公司数据、还需要保护客户数据的组织”。出于对安全性的考虑,GitLab 认为务必要对员工电脑配置进行统一调整。

近日,有人发现在 GitLab 在其官网的《入职和设备管理》一文中,明确指出了对其员工在计算机操作系统方面的限制:“允许使用 Linux 和苹果的 macOS,但禁止使用微软的 Windows”。

这条硬性要求的出现有些令人意外:你说你是开源代码管理平台,所以坚持要用开源的 Linux 系统也不是不能理解,但为什么同样是闭源操作系统,macOS 可以 Windows 却不可以?

对于这条“禁用 Windows”的规定,GitLab 给出的理由主要是以下两点:

  • 由于 Windows 在桌面操作系统中处于主导地位,所以它也是间谍软件、病毒和勒索软件攻击最多的平台

  • macOS 预装在 Apple 计算机上,Linux 也可免费使用。但如果要使用 Windows,就必须购买 Windows 专业版,因为预装的 Windows 家庭版难以确保安全,不符合 GitLab 的安全准则

GitLab 指出,结合过去 Windows 的表现来看,它存在许多安全漏洞,经常是各种恶意软件的攻击目标,也是勒索软件主要盘踞的地方……反正从“安全角度”考量的话,GitLab 限制使用 Windows 的原因有很多。

与之相比,“macOS 和 Linux 则具有确保平台安全稳定的能力”,满足了 GitLab 的基本需求。在众多 Linux 发行版中,GitLab 尤其推荐 Ubuntu:它在修补安全漏洞方面的响应极为快速。

ed15ad8debbccdbf1da1b0541490e672.png

首选苹果 Mac,Linux 笔记本认准戴尔

GitLab 对操作系统的限制,显然会影响员工对硬件设备的选择,因此 GitLab 做出要求,员工可根据自身情况选择申请使用哪款电脑:预装 macOS 的 Mac 是首选,不过“如果团队成员熟悉 Linux 并能够自我支持,也可以选择 Linux 笔记本电脑”。

(1)苹果设备

大多数对电脑性能要求较高的岗位需使用 14 英寸或 16 英寸的 MacBook Pro M1 Max,具体岗位对应可申请的 Mac 型号可参看:https://docs.google.com/spreadsheets/d/1OuC0_iliCzASKfOhDLWO4fBmDS-uL3VGRMI6063R6tk/edit?usp=sharing。

注:GitLab 的 IT 运营团队只会对公司购买的苹果产品使用企业折扣,苹果目前还没有计划提供针对 GitLab 员工的折扣。

(2)Linux 设备

目前,GitLab 官方唯一指定的 Linux 笔记本电脑供应商是戴尔,指定型号包括戴尔 Precision 5500 或 5700 系列和戴尔 Latitude 7300 系列。“这些 Linux 笔记本电脑通常会预装 Ubuntu Linux,这样就可以节省 Windows 许可证的费用。”

至于为何 GitLab 选择将戴尔作为独家 Linux 供应商,其给出的原因如下:

  • 戴尔在主流制造商中出货预装 Linux 笔记本电脑的历史最长;

  • 戴尔能将笔记本电脑运送到 GitLab 员工居住的所有国家/地区;

  • GitLab 需要一个稳定且统一的平台来在部署软件组件,这一点标准化的 Linux 做到了;

  • 当前 Ubuntu LTS 是首选的 Linux 平台,它具有稳定性和快速修补漏洞的优点;

  • 从单一供应商处购买笔记本电脑可以享受企业折扣;

  • 戴尔是经过认证的 Ubuntu 供应商,可提供多种笔记本电脑选择,甚至拥有自己维护的 Ubuntu OEM 版本;

  • 迄今为止,戴尔的所有主要安全问题都源于 Windows 操作系统,而非硬件

综上,GitLab 安全团队在尝试平衡隐私、安全性和合规性,确保访问 GitLab 数据的可靠选择后,最终建议员工选择:运行 macOS 的 MacBook Pro 和运行 Linux 的 Dell Precision。GitLab 还补充道,员工向公司申请使用的笔记本电脑一般可在三年后进行更换,但具体时限还是取决于电脑的使用情况。

8eee30967e51e303968071ee29745d40.png

网友:骗人,你就是因为 GitHub “抵触”微软产品

原本这篇文章是 GitLab 专为内部员工整理的设备规范,却意外在网络上引起了讨论,甚至在 HN 积累了 300+ 条评论。

许多网友认为 GitLab 给出的理由并不足以禁用 Windows,逻辑性并不强,更多可能是对 GitHub 所在的微软产品的“抵触”。

@habnds:“我想了一会儿,突然意识到 GitLab 的主要竞争对手是微软旗下的 GitHub,所以也许他们对使用微软产品不是很热衷?”

@marcosdumay:“所有的理由都是正确的,但感觉不是非常相关,这给我的感觉就是:可能的确是因为 Windows 来自他们的竞争对手,所以 GitLab 才禁用。”

@politelemon:“按 GitLab 的说法,因为 Windows 专业版要付费所以选择了 macOS 和 Linux。但 macOS 同样不是‘免费的’,甚至按照他们的逻辑,应该只允许使用 Linux 才对——这也就说明了他们的结论并不是由逻辑驱动的。”

也有人对 GitLab 禁用 Windows 的后续影响感到担忧:“虽然我自己不是 Windows 用户,但我认为这是一个相当糟糕的政策,这样 GitLab 未来是否就不能在 Windows 上测试用户体验了?GitLab 是省钱了,但换来的是用户将得到更差的产品。”

那么,你对于 GitLab 禁止员工使用 Windows 的决定有何看法?

参考链接:

  • https://news.ycombinator.com/item?id=32356428

  • https://about.gitlab.com/handbook/business-technology/team-member-enablement/onboarding-access-requests/

你好,我是厂长谭庆波,就读于哈工大,计算机系学生,求学20载,从农村到C9博士,点击蓝字查看我的成长之路。
同时,我也是知乎博主:谭庆波,日常分享高质量程序员认知,学习资料、技术干货等,欢迎围观。


 
最后说一件重要的事,我最近建了一个【晋级的程序员】社群,旨在帮助新手小白快速上手找到编程的乐趣,里面沉淀了大量编程相关经验教程以及学习资料,目前社群人数已经超过2500人,欢迎大家加入:

相关文章:

  • 为什么某互联网企业开200w年薪大家都支持,但是中金开100w年薪大家都在骂?...
  • 距离自毁只剩24小时的网站,全靠网友续命
  • 又撞了,杀人的自动驾驶。。。
  • 34岁学长,工作10年存款5万
  • 腾讯又一神级APP下架!网友:我用了7年啊。。
  • 定了!本科以下学历直升本科,每人补贴8000元!政策扶持,名额有限,速看!...
  • 普通大学生的真实出路
  • 这反人类的限制,终于被破解掉了!
  • U盘无法打开提示格式化解决方案
  • 共享文件与打印机设置
  • 七款无广告/不骚扰输入法
  • 3Dmax出现弹窗- Compile error:意外的脚本结尾
  • C4D报错合集
  • unity报错合集
  • SPSS报错can not create java virtual machine
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • ES6语法详解(一)
  • Java比较器对数组,集合排序
  • JS变量作用域
  • Laravel 实践之路: 数据库迁移与数据填充
  • magento 货币换算
  • php的插入排序,通过双层for循环
  • python 装饰器(一)
  • SOFAMosn配置模型
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • TCP拥塞控制
  • tensorflow学习笔记3——MNIST应用篇
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 手写双向链表LinkedList的几个常用功能
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  •  一套莫尔斯电报听写、翻译系统
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • #QT(TCP网络编程-服务端)
  • #传输# #传输数据判断#
  • (1) caustics\
  • (层次遍历)104. 二叉树的最大深度
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)setTimeout 和 setInterval 的区别
  • (转)拼包函数及网络封包的异常处理(含代码)
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .NET Micro Framework 4.2 beta 源码探析
  • .NET NPOI导出Excel详解
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .net下的富文本编辑器FCKeditor的配置方法
  • /bin、/sbin、/usr/bin、/usr/sbin