惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Help Net Security
The GitHub Blog
The GitHub Blog
F
Fortinet All Blogs
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Cisco Talos Blog
Cisco Talos Blog
P
Privacy & Cybersecurity Law Blog
I
Intezer
Y
Y Combinator Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
N
Netflix TechBlog - Medium
The Hacker News
The Hacker News
AWS News Blog
AWS News Blog
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Stack Overflow Blog
Stack Overflow Blog
Hacker News: Ask HN
Hacker News: Ask HN
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
B
Blog
T
Tor Project blog
C
Cybersecurity and Infrastructure Security Agency CISA
云风的 BLOG
云风的 BLOG
博客园_首页
V2EX - 技术
V2EX - 技术
T
Threat Research - Cisco Blogs
腾讯CDC
宝玉的分享
宝玉的分享
博客园 - 叶小钗
罗磊的独立博客
S
Securelist
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
Scott Helme
Scott Helme
博客园 - 司徒正美
W
WeLiveSecurity
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Secure Thoughts
NISL@THU
NISL@THU
N
News and Events Feed by Topic
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
雷峰网
雷峰网
大猫的无限游戏
大猫的无限游戏
K
Kaspersky official blog
IT之家
IT之家

Gitee 官方博客

花几千块报志愿之前,先把这 7 个问题问清楚 Gitee 618 年中盛典开启:企业版新购最高送一年,PocketClaw 首次限时折扣 Gitee 成为首批「供应链安全号」成员单位,携手共建国产工业软件生态 七大赛道 TOP 10 公布!Gitee 年度开源项目评选结果正式揭晓 GLM-Image 上线模力方舟:首个国产芯片训练的多模态图像生成模型 「开源技术」正式纳入国家职教体系,Gitee 已为开源教育落地做好准备 Gitee 软件工厂:以密级管理为底座,构建符合国家保密资质的安全研发体系 Claude Code 的代码安全困境:插件机制齐全,却绕不开模型幻觉 北京中关村学院入驻 Gitee:打造 AI for Science 教学新范式 Gitee 移动软件工厂:突破网络限制的开发新模式 从依赖到可控:开源基础设施的国家命题 模力方舟 MCP Server 上线:在 Cursor 里玩 AI 生图+语音 【国内首家】 Gitee Repo 通过信通院《可信制品管理能力分级要求》先进级(最高级)评估 Gitee Repo 助力关键领域 DevSecOps落地:构建安全可控的制品管理体系 会翻译、懂产品、还能画头像:Gitee 智能三连上线! Gitee Pipe:关键领域 DevSecOps 的核心引擎 时代命题下的民营科技担当:从备份战略看 Gitee 的国家定位 没人喜欢写 README?Gitee:现在你不用写了 关键领域软件工厂的安全中枢:Gitee Scan 全面升级供应链检测能力 Gitee MCP 现已支持远程访问:无需本地部署,AI 助手即插即用 Gitee 企业版效能度量全面升级:构建可衡量、可洞察、可优化的研发体系 高标准+安全可控:关键领域研发为什么选择 Gitee Code? 河南农担 x Gitee:以数字化赋能「三农」信贷服务新范式 Gitee Test:驱动软件工厂DevSecOps 落地,保障关键领域安全稳定 马建仓 AI 助手全流程升级:更聪明的研发搭子,更专业的协作助手 从公益初心到商业化探索,开源中国助推中国开源生态之路 以知识管理赋能 DevSecOps,Gitee Wiki 加速关键领域软件自主演进 Gitee 企业版测试管理全面升级:流程更顺畅,交付更可靠 Gitee 企业版 AI 队友邀测开启:程序员的贴身助理来了 Gitee 构件治理实践:CBB 分布式管理助力软件工厂建设 重塑研发组织形态:从「中心软件工厂」到「移动软件工厂」 Gitee 企业版三大模块升级解读:项目、工作项、测试体系全面进化! Gitee 软件工厂的构件之道:CBB 与内源库(代码库\制品库)的本质差异 Gitee 软件工厂新范式:高安全、强协同、快交付,一体化研发全打通 当关键软件也被卡,我们的答案在哪里 Gitee 获北京市“科学技术进步奖”一等奖 加速项目管理效率,Gitee PPM 驱动软件工厂的智能化转型 打造智能化软件工厂:Gitee Insight 的 DevSecOps 度量实践 Gitee MCP 上线 Trae,AI 助手从代码生成走向仓库联动 开源中国荣获专精特新“小巨人”:做关键行业的可信研发底座 用智能体重塑 DevOps:Gitee 如何打造全域研发引擎 Gitee Repo 联邦仓库能力展示及最佳实践 Gitee AI 队友公测启动!自主申请,从审代码到漏洞检测全都自动搞定 Gitee 企业版更新:工作项、安全管理与测试用例能力升级 GOTC 2025 回顾|打通数据到生产,AI 应用工程化加速落地 Gitee Team 如何支撑关键领域行业 DevSecOps 落地? 软件工厂驱动 DevSecOps:高效集成发布的演进实践 Gitee 正式发布企业版 MCP Server:让 AI 深度融入企业研发管理 马建仓 AI 助手再进化:懂场景,也懂老板,但更懂你 一次提交更新两个仓库,Get 更优雅的 GitHub/Gitee 仓库镜像同步 当开源的门缝变窄,真正需要我们警觉的是什么? Gitee构建智能研发闭环:从数据飞轮到多智能体协同 一套平台管理上千构件:Gitee DevSecOps 如何用 CBB 重塑军工研发范式? DeepSeek 与开源:肥沃土壤孕育 AI 硕果 开源中国入选「2025年度中国软件高质量发展百强企业」 Gitee Go Release 插件上线:自动发版、上传构建产物一步到位 【重磅升级】制品库安全知识库自动更新与分析,制品安全防护「快人一步」 Gitee AI 队友新升级:PR 审查更智能,安全治理更灵活,个人用户也能用! Gitee 产品更新:Web 端提交、工作项与知识库体验提升 开源中国参加2025敏捷生态大会:智能化软件工厂构筑工业研发新范式 Gitee x AGIROS:与中科院软件所共建国产具身智能基础设施 开源中国董事长马越出席香港开源论坛:开源基础设施服务香港智能转型 沐曦股份选择 Gitee 企业版,打造国产 GPU 开源生态阵地 国产IronBank——源盾可信中心仓 Gitee CodePecker 支撑 DevSecOps 落地,双擎驱动全链路研发安全 开源中国入选「2025年度中国信创软件高质量发展百强企业」 破解安全研发三大难题:Gitee 软件工厂助力高标准合规落地 Jira 停售一年后,国产研发管理平台谁能真正站出来? 从断网交付到敏捷协同:Gitee 移动软件工厂的增量落地全路径 Gitee 企业版更新:优化测试管理流程,闭环能力再提升 Gitee DevOps 全面支持信创,驱动企业数字化安全与效能跃升 武汉人工智能研究院 x Gitee:跨模态智能研发的革新之路 Gitee DevSecOps:打造智能化军工软件工厂,破解版本管理难题 智能化 Issue 管理:基于 Coze + Gitee API 的自动化实践 Gitee 发布官方 MCP Server :让 AI 助手直连你的代码仓库 Gitee MCP Server:让 AI 助手接管繁琐事务,助力 Gitee 专业版研发提效 开源中国完成数亿元 C 轮融资:Gitee 加速智能化研发效能革新 启航 AI 新航道!Gitee 双十一与你共享智能新未来 《中国DevOps现状调查报告(2023)》发布,Gitee 领跑国产平台 研运一体化之下,Gitee 如何精准赋能银行实施大规模敏捷 对数字「祛魅」,中大型规模企业如何进行有效的研发效能度量? 从混乱到卓越,Gitee Code 如何治好 IT 部门的精神内耗 科技赋能,Gitee 助力国家海关总署实现重大业务改革 科大讯飞选择Gitee旗舰版,完成研发协作平台国产化替代 用脑图做测试用例,高效到家了! 信创驶入快车道,中国赛宝实验室选择 Gitee 搭建高效研发协作平台 金融人怎么写出安全可靠的代码?知名证券企业这样做 16家单位、2万名研发,金融科技领头羊如何集中统一代码管理? 《Gitee 专业版白皮书》重磅发布,助力企业实现高效、快捷交付 Gitee x 未来物联:高效能产研团队是怎样炼成的? 点击查看2022年你与Gitee的记忆 我们让 ChatGPT 写了一篇开源项目推荐 Gitee 自动化全新上线,让提效融入每处细节 Gitee Scan 四大升级,助力企业完美实现质量左移 Gitee携手内燃机龙头企业,为数字化研发注入新势能 【永久有效】初创企业限时特惠,999 即可购买 Gitee 标准版 Gitee与浪潮集团达成合作 加速国内DevOps生态建设 Gitee助力宁波银行DevOps三级认证,加速数字化转型 海通证券携手Gitee,以科技赋能金融行业研发转型 产品研发交给外包,怎么管理才能做到心里有底?
在你的项目开源之前应该确认的几件事
Gitee · 2019-11-07 · via Gitee 官方博客

特别说明:本文由开源之道发布并授权转载。

最近总是看到很多项目开源的信息,但是仔细一读,发觉根本就不是那么回事,比如XX开源深度学习框架、XX开源手机客户端数据库等等。仅仅是开放了代码而已。其它似乎什么都没有做。作为内行的你来说,是否有点痛心疾首?开源真的就没有方法论可言了?

你所在的公司决定将自己内部开发的项目开源了。除了准备好代码之余,是否确定了诸如开源的目标、开发流程等等?开源绝非是将代码开源即可,除了代码还有很多事情需要确认和准备,别急,且待我慢慢道来。

其实,我忍不住想用电影《蜘蛛侠》里面的一句经典台词:“能力越强,责任越大。”来绑架你的开源行为,一旦你的项目开源了,这同时也意味着,你的公司不仅要为项目本身负责,而且要为围绕项目所构建的社区负责,而这通常有意味着需要更改开发/构建/发布工作流程。这不仅仅是代码本身的问题,而且包括那些围绕代码的所有流程和基础设施,唯有这些适应开源的方法论,方能确保项目的成功。

在你的项目开源之前应该确认的几件事-Gitee 官方博客

以下就是我要和大家说的,关于在项目开源之前应该去确认的几件事情。

确定公司开源的目的

在事情没有开始发展之前,请花一些时间来评估为什么公司要选择开源?要知道,开源一点都不简单,相反,会是非常艰难的过程,如果是三心二意的话,很有可能坚持不下去。

公司在项目开源之前已经花费了大量的时间和资源来开发,在开源之后,还要花更多的时间和精力去维护和经营围绕项目的社区。所有的这些看起来都是利他主义的,但公司的目标是盈利的。这是所有人都去思考的问题。

请在开源之前,要三思。开源某种程度上并不能使你的公司直接赚到钱,请一定要理解自己的目标。或许是为了声誉,或许是为了吸引人才,或许是其他原因。总而言之,要想清楚。

开源不仅要满足公司的目标,也要对自由和开源软件(FOSS)有利。如果不能满足上述二者的诉求,开源将毫无意义。

理解社区的期望

当你的公司还掌握着项目的绝大多数权力的时候,可以决定那个贡献可以合并到主干,也决定着什么时候发布版本,即使这样,也要确保所有的开发流程都是在开放的沟通情形下完成的,而且是围绕着社区来进行协作的。

换句话说,该项目必须按照社区对开源项目的期望进行操作。这些期望包括(但不限于):

  • 所有的开发工作 - 包括bug修复、新的功能开发、产品的路线图、以及讨论和问题追踪,所有的这些事情都要公开的进行,并与社区协调配合。
  • 所有和代码相关的 构建流程 (即持续集成、持续部署等内容)均是公开操作的,并社区成员是可以访问的。
  • 公司要接收来自社区的 贡献,这里的“贡献”不仅仅指的是代码,它也包括文档、设计、产品路线指导、治理、以及与项目有关的其它事项。所有的贡献必须及时的进行review,和认真的考虑,且要进行公开的反馈。

要明白社区才是关键

开源一个项目需要做很多的工作,虽然在实践中通常没有比专有软件的开发需要做的更多。然而,流程的改变和文化的转型是需要付出很多努力方能有所结果,然后才是进一步的更加公开、有效,并获得社区的支持。

既然有这么多的工作,我为什么要开源了呢?

正如我在开始的时候所提到的,一家企业开源某项目并不是完全的处于大公无私的、利他的行为,之所以开源,企业通常是希望能够从项目所围绕的社区获得一定的利益。但是,企业要获得这些利益的前提是能够赢得、构建、维持住社区的信任。

信任是在项目在公开的进行中所产生的,须在社区的氛围下进行沟通和协作。公司做出的任何完全单方面或私人的决定都会违反这种信任,疏远社区。当社区分崩离析时,人们就会离开(有时会有人fork代码另起炉灶)。

任何人都没有办法从一个消失的社区中受益。这样的结果就是,这家公司拥有看起来开放,却无人问津的代码而已。与自己当初的目标背道而驰!

启动开放的缺陷跟踪系统

一旦一个项目发布了,所有的 bug 报告 —— 旧的还是新的 —— 都必须公示在项目的缺陷跟踪系统,以下所列出来的是你应该去做的事情:

  • 原先已经存在的缺陷 移到项目的缺陷跟踪系统
    • 要知道迁移的过程通常是需要写一些脚本的
    • 在你移动任何东西之前,检查所有现有问题,并关闭那些没有真正希望被修复的问题。
    • 确保这些过去的缺陷当中所包含的专有的信息要删除,然后在将之移入缺陷跟踪系统。
  • 决定要不要将已经修复的缺陷公开
    • 这是可选的,但是它却能够提供有价值的上下文。
    • 确保这些已经修复缺陷当中所包含的专有的信息要删除,然后在进行公开。
  • 创建新的工作流,以让所有的缺陷能够通过公开的缺陷跟踪系统更加的有效。
    • 为公司所有缺陷报告者或参与者进行培训和协调。
    • 假如你选择来网上公有的服务(如Zendesk),新的工作流必须确保这些缺陷的报告能够有效的迁移到这些服务上来,而且要确保报告方(通常是客户)仍然能够收到他们所期望的服务和信息。

准备好产品路线图的公开透明

一旦项目以开源的形式发布,其开发的路线图,以及所有相关的讨论均须在公开的地方进行。

  • 所有关于项目的路线图(以及为什么)讨论和决定都必须要公开,并且要以社区的名义进行。
  • 社区的反馈需要集成到路线图当中来。

请记住:虽然路线图和所有关于它的讨论都是在公开的和社区的投入中发生的,要知道除非是发生了变故,否则公司依然有对项目最终的决定权:决定项目的走向,何时以及为什么。当然,这些应该在尊重项目现在服务和支持的社区的方式来完成。

公开的项目路线图,可能会包含一些功能,这些功能或者和专有的功能有所交互,或者是和专有的功能有依赖关系,那么公司里与项目有交互的每个人都要小心,请不要在公开的路线图中去讨论专有的信息和内容。

定义好协作的流程

项目以开源的形式发布之后,所有的贡献都必须使用公众的工作流,无论贡献来自原始公司还是社区。

我这里列举一个典型的工作流:

  • 贡献者能够 fork 或 clone 公共的仓库到自己的电脑上。
  • 贡献者在自己的分支上开发新的功能,这些工作,贡献者是在自己的电脑上完成的,是私有的。
  • 一旦完成了所开发的内容,贡献者就会将这些内容提交到公共的仓库。(该过程取决于正在使用的版本控制系统以及项目自身偏好。)
  • 这些内容会被社区有资格的社区成员(通常是核心贡献者)进行审核,这些核心成员去选择合并,推迟或关闭(拒绝)这些内容。如果内容被合并了,可能合并到主干或其它的分支,这取决于项目的需要和流程。

每个项目都必须考虑和决定其具体的贡献需求和工作流,而且最好是写入一个叫做 CONTRIBUTING.md 的文件,让人们能够访问到。

也不要忘记构建流程

关于构建流程的部分,往往是从内部到开源的项目最容易忽略的步骤,这是不应该的,构建流程应该和项目一同对外开放。

以下是开放构建流程之前要确保的事项:

  • 确保 代码中没有专有的或仅供内部的fork
    • 如果有的话,那么可能会失去社区的信任,那样的话,人们会选择离开。
    • 它也将大大增加合并和维护代码所需的工作量。
  • 所有构建过程都必须针对的是公开的代码,不管是主干还是稳定版的分支,用于构建的可维护的(也就是对产品和项目有意义的内容)。
  • 构建完成后,所有的构建 artifacts 都应该立即公开。
    • 至于之后的分发(如,推送给客户)该如何进行则是公司自己的决定,但构建 artifacts(包括最终的二进制文件)则始终是公开可获取的。

社区治理和工具的公开讨论支持

一旦一个项目发布之后,所有有影响的、社区本身的决定均需公开出来,包括治理的变更、诸如版本控制系统、持续集成等工具的调整、以及更改或增加沟通的环节。

这并不一定意味着每一个小的决定都必须发送给委员会,或者要求全社区进行充分的讨论。通常只要征求社群的意见和反馈意见,在做决定时就考虑一下。

所有最终的决定,背后的原因,以及大家所预期的结果,都必须公开的宣布、可供访问、记录在项目用于此类事物的任何跟踪系统中(通常是邮件列表加文档系统,或者是wiki)。

尽可能开放所有的环节

你可能现在已经隐隐约约觉得上述的段落可以总结为一句话:

任何与项目有关的任何事项 都要在开放的前提下完成。

项目一旦开源,它将不再属于”你们”-公司,它现在属于“我们”——“社区”(公司只是社区的一份子),这也就意味着社区的发展涵盖了所有。

译后记

开源,是关于理念、行为、文化等多重因素所早就,无论你是个体还是公司,开源一个项目绝非仅靠几条方法就能无敌于天下,它是一个过程,一个观念转变,认知上升的过程。此处的方法只是告诉你做点什么事情,而真正开源的过程,是体现在每一个细节中,文档的撰写、Bug 的修复、邮件列表的讨论、Wiki的撰写、IRC或线上讨论会议的每一句话、每一个决策。直接决定着项目的走向和社区的活跃度。文化、观念、认知的转变,是其中最难的部分。

关于原作者

在你的项目开源之前应该确认的几件事-Gitee 官方博客

VM (Vicky) Brasseur - VM(简称 Vicky)是一名管理者,其中包括管理人、管理项目、流程、产品、以及p^Hbusinesses,在她超长的18年的技术生涯中,她曾经担任分析师、程序员、产品经理、软件工程经理、软件工程总监。目前,她是一名顾问,为公司提供有关开源的战略、政策和程序的建议。 她的博客地址:anonymoushash.vmbrasseur.com .

本文由作者VM (Vicky) Brasseur 发表在Opensource.com上:What to know before you open source your project。本文在Creative Commons BY-SA 4.0许可证下发布。由开源之道精心编译,欢迎转载!