web前端JFrog:开源项目的最大挑战是文档和许可

作者:web前端    发布时间:2020-02-11 09:18     浏览次数 :

[返回]

web前端 1

本文作者Chris Mayer根据JFrog的一份关于开源项目最大挑战的调查,引用Google和GitHub的案例分析了开源项目里应该着重注意的事项。

目前在代码托管和版本控制上的主流工具 — Git,比较流行的服务有 Github、Bitbucket、 GitLab、 Coding,他们各自有什么特点,个人使用者和开发团队又该如何选择?

一份调查显示,每当在工作中要用到开源软件的时候,贫乏的文档和许可是开发人员面临的最大挑战。以色列创业公司JFrog,以开源项目仓库管理器——Artifactory为众人所熟知,他们发现,来自世界500强的150家企业里有65%开发者认为上面所说的两点是开源中最大的障碍。JFrog认为这一发现或许还可以这样理解:开发者经常担心“正在使用的OSS并不可靠”,不管这项技术有多先进。

web前端 2

援引开发者的话说,其它棘手问题包括:分销平台的可靠性和性能(25%);关键时刻的代码变更(57%)。在非开发任务期间做的其它事情都有:等待反馈(27%),任务跟踪(18%)。这项“Your Life as a Developer”的调查看上去只是纯粹的想要弄清楚:如果JFrog退回到一月份来发行二进制存储库Bintray的话,是否会是一个正确的选择呢?这一服务准许开发者发布和下载开源软件包,并且更加倾向于关注社会,同时还许可用户在技术社区里分享和发现其它的软件包。用户较为青睐的高调软件包涵盖Netflix,OpenJDK,ElasticSearch和Gradle。

在这篇文章中,我们以客观的态度,以问题作为出发点,介绍和比较 GitHub、Bitbucket、GitLab、Coding 在基本功能,开源与协作,免费与付费计划,企业解决方案,集成 flow.ci 等方面,让大家了解这四者不仅仅是功能不同。

总而言之,这项报告还是发现了一些有趣的东西。为了和别人共享资源库和代码,50%受访者使用源代码控制,而40%的人使用二进制存储库作为首选方法。JFrog的这个建议有助于同事之间更加相互合作,至少要比以前的相互合作机会多很多。

Github

Google Code和GitHub都已经在去年终止了对二进制的托管,也就是说Bintray很有可能从他们那里接手对二进制的托管。不过,至今仍有20%的调查者还在经常使用非现存的服务。JFrog认为这主要是Google和GitHub的核心优势并没有利用在这里的缘故。毫无疑问这是一个很好的案例,这一调查结果可能有更深层次的暗示:绝大部分的大公司不信任在线私人二进制存储库。因此,Bintray的主要挑战是必须获得这些大公司的支持。

GitHub 是第一个供“用Git进行版本控制系统的软件开发项目”使用的基于Web的代码托管服务,是目前全球最大的开源社交编程及代码托管网站。GitHub 于 2008 年 4 月 10 日正式上线,除了基本的服务以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。

在发布Releases之后,GitHub就从那以后稍微改变了策略,可以认为是对产品营销过程的一个反思。据一位公司发言人称:在这之前,GitHub放弃了上传资料的功能,因为这款功能并不像GitHub用户体验的结果那样具有较高的质量。可能这给Bintray带来不小的挑战。

web前端 3

自从在四月份公开上市以来,所有的数据显示都说明了Bintray的势头很强劲——5814个会员在服务器上托管着超过65000个软件包。自从Google Code停止支持之后,它的增长率一直以鼓舞人心的势头在上升,两周之内的注册量就增长了250%。另外,自动的GitHub的引入也为注册量的增长做出了巨大的贡献。

Bitbucket

JFrog报告指出,“这对于Bintray来说是一个相当有意义的飞跃,我们相信来自Google和GitHub直接相关性的消息。而且它也强调了现在仍需要一个具有更大增长空间的市场。”

BitBucket 是 2008 年创建的源代码托管网站,采用 Mercurial 和 Git 作为分布式版本控制系统,同时提供免费账户和商业计划。2010 年被 Atlassian 收购,与 Atlassian 的其他服务(Git GUI SourceTree、HipChat、Cloud9)顺利集成,主要面向慈善企业和企业用户/其主要市场是大型企业。

Via Jaxenter

web前端 4

GitLab

GitLab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。

web前端 5

Coding

Coding 是一个面向开发者的云端开发平台,目前提供代码托管,运行空间,质量控制,项目管理等功能。此外,还提供社会化协作功能,包含了社交元素,方便开发者进行技术讨论和协作。2016 年 3 月 CODING 宣布收购代码托管平台 GitCafe。也许是目前国内体验最接近 github 的产品。

web前端 6

基本特征

关于这 4 大代码托管服务平台有着各自不同的功能,但也是有一些基础特点,比如:

  • 拉取请求
  • 代码审查
  • 内联编辑
  • 问题跟踪
  • Markdown支持
  • 双向认证
  • 高级权限管理
  • 托管的静态网页
  • 功能丰富的API
  • Fork / Clone Repositories
  • 代码段
  • 第三方集成

欲了解更多的功能和细节,可以直接去 Bitbucket, GitHub, GitLab, Coding相关页面了解。

哪个是开源的服务或产品

在这四家代码托管服务,只有 GitLab 有一个开源代码版本。GitLab 社区版的源代码也开放在他们的网站上。

GitHub 以开源友好而闻名,并且拥有最大数量(19.4M +)的开源项目但其本身不是开源的。

Bitbucket也不是开源的,但在购买托管服务的服务中提供了「产品定制」的功能。

Coding 同样也不是开源的,不过 ,9 月中旬 Coding 宣布开放 WebIDE 的源代码。

开源与协作,谁是最优之选

GitHub,GitLab,Bitbucket 和 Coding 都具有「发现」功能。除了 GitLab,每个都提供了「follow」功能。Coding 允许开发者在个人配置文件中添加自定义标签,方便找到其他相同兴趣的开发者。

在协作上,GitHub 是开源协作方面的首当其冲的选择。目前 GitHub 拥有全世界最大数量的公共开源项目,全球顶级科技公司(Google / Apple/ Facebook/ Twitter/ Microsoft/Alibaba/ Tencent)纷纷加入 GitHub ,全球顶级开源项目(Linux/ Nodejs/ Swift/ Ruby /Docker)都优先选择在 GitHub 上开源,这里还有全球顶级编程大牛贡献代码。这里不仅仅是专业开发人员的交友乐园,也聚集了很多对软件开发感兴趣的人学习。甚至,一个活跃的 GitHub 账号也能成为理想工作的敲门砖。

导入的代码仓库类型

web前端 7

某种意义上,分布式版本控制系统决定了选择哪个代码存储服务,Bitbucket 在这方面脱颖而出,因为这是唯一同时支持 Mercurial.

Coding,GitHub 和 Bitbucket 支持导入基于多个不同 VCS 的 repos,而 GitLab 只支持 Git。

毫无疑问,Git 是目前最受欢迎的 VCS,但如果你正在使用 Mercurial 或 SVN 存储库,那么迁移至 GitLab 可能会很复杂。GitLab 提供了简单方便的方式,用于从 GitHub 或其他平台上导入代码仓。

GitHub 支持:

  • 导入Git,SVN,HG,TFS.

GitLab 支持:

  • 导入Git.
  • 更容易从其他服务导入GitHub,Bitbucket,Google code,Fogbugz。

Coding 支持:

下一篇:没有了