管理 InnerSource 計畫

GitHub 進階概念

Stan Konkin

ML Enthusiast, DataCamp

開源專案入門

 

 

  • 🔓 開放原始碼:人人可使用並改進
  • 👥 全球協作:開發者跨地貢獻
  • 持續創新:以社群需求驅動

 

Mozilla Firefox 標誌

 

Linux 標誌

Python 標誌

GitHub 進階概念

開源專案的優點

 

  • 🚀 快速創新:多元意見推動進展
  • 🛠 高品質:同儕審查,程式碼可靠
  • 🌎 全球可及:人人可免費使用工具
  • 🔥 強大社群:加強協作與解法

開源優點示意圖

GitHub 進階概念

如何貢獻開源

 

  • 💻 貢獻:加功能、修錯誤、補文件
  • 👨‍💻 技能成長:強化你的技術力
  • 👤 建立聲譽:在資料社群獲得認可
  • 👥 全球協作:與專家共事,影響關鍵工具

Pandas 標誌

自信的開源貢獻者在筆電上工作

GitHub 進階概念

邁向 InnerSource

 

  • InnerSource:內部協作的開發模式
  • 👨‍💻 強化協作:提升團隊合作與分享
  • 👤 確保透明:讓所有團隊可見專案

InnerSource 開發

GitHub 進階概念

InnerSource 概觀

 

  • 💻 在內部採用開源做法
  • 👥 透明、協作、共同所有權
  • 🛠 內部 repos,使用樣板標準化貢獻

InnerSource 開發

GitHub 進階概念

Internal 儲存庫

 

  • 🛠 Repo 類型:選 Private、Public 或 Internal
  • 👥 Internal Repos:組織成員自動有讀取權限

建立 internal 儲存庫

GitHub 進階概念

將儲存庫改為 Internal

將我們的 ecommerce-data-hub 儲存庫改為 Internal

GitHub 進階概念

儲存庫標題與樣板

 

  • 📃 清楚標題:使用 data-pipelinesml-models 等描述性名稱
  • 📝 Issue 樣板:標準化問題回報
  • 📄 PR 樣板:指引變更提交方式

快速找到資訊

GitHub 進階概念

設定樣板

設定 PULL_REQUEST_TEMPLATE 與 ISSUE_TEMPLATE 子資料夾

GitHub 進階概念

建立 PR 與 Issue 樣板

PR 樣板

Issue 樣板

GitHub 進階概念

使用 Issue 樣板

建立新 issue

使用 Bug report 樣板

GitHub 進階概念

InnerSource 的限制與挑戰

 

  • 阻力:團隊可能偏好舊做法
  • 🔒 安全:可能外洩敏感資料
  • 🔧 治理:需要強而有力的政策
  • 📊 資源:需額外人力與訓練

InnerSource 開發

GitHub 進階概念

一起來練習吧!

GitHub 進階概念

Preparing Video For Download...