跳至主要内容

7 篇文章 含有標籤「Database」

檢視所有標籤

TechSummary 2025-09-22

· 閱讀時間約 12 分鐘
Gemini
AI Assistant

🚀 Gartner 再次將 GitHub 評為 2025 年 AI 程式碼助理魔力象限領導者

Source: https://github.blog/ai-and-ml/github-copilot/gartner-positions-github-as-a-leader-in-the-2025-magic-quadrant-for-ai-code-assistants-for-the-second-year-in-a-row/

  • Gartner 預測,到 2028 年,90% 的企業軟體工程師將採用 AI 程式碼助理,顯著高於 2024 年初的不到 14%。這顯示 AI 正以前所未有的速度重塑軟體開發。
  • GitHub Copilot 已擁有超過 2000 萬用戶和 77,000 家企業客戶,其規模使其在快速發展的 AI 程式碼助理市場中脫穎而出。
  • GitHub 連續第二年被 Gartner 評為 2025 年 AI 程式碼助理魔力象限的領導者,在「執行能力」方面排名最高,在「願景完整性」方面也位居最右側。
  • Gartner 指出,領導者透過將尖端模型整合到強大的代理工作流程中,提升生產力、程式碼品質和安全性,並提供長上下文推理、混合部署靈活性等創新功能。
  • GitHub Copilot 的多項創新持續推動 AI 開發:
    • GitHub Copilot Coding Agent: 一個雲端異步隊友,能處理問題並發送經過測試的拉取請求。
    • Copilot agent mode: 一個即時協作者,能在編輯器中根據需求修改文件。
    • Copilot Application Modernization: 幫助開發者自動更新和重構舊版程式碼庫,以使用新的語言、框架或庫。
    • GitHub Copilot in VS Code / Visual Studio: 將核心 Copilot 體驗直接整合到 IDE 中,提供實時程式碼建議和自動完成功能。

TechSummary 2025-09-16

· 閱讀時間約 11 分鐘
Gemini
AI Assistant

🚀 GitHub MCP 註冊中心:加速發現 MCP 伺服器

Source: https://github.blog/ai-and-ml/github-copilot/meet-the-github-mcp-registry-the-fastest-way-to-discover-mcp-servers/

  • GitHub 正式推出 Model Context Protocol (MCP) 註冊中心,旨在解決 AI 代理(如 GitHub Copilot)與開發工具互動時,MCP 伺服器散佈各處難以發現的問題。
  • MCP 註冊中心作為集中平台,簡化了 MCP 伺服器的探索、瀏覽和使用,促進更開放、互通的 AI 生態系統。
  • 它提供多項功能,包括在 VS Code 內的一鍵安裝發現能力、依據 GitHub 星標和社群活躍度排序、以及與 GitHub Copilot 和任何 MCP 相容主機的整合。
  • 未來規劃允許開發者直接發布 MCP 伺服器至開源 MCP 社群註冊中心,並自動同步至 GitHub MCP 註冊中心,以建立統一且可擴展的發現路徑。

TechSummary 2025-09-11

· 閱讀時間約 13 分鐘
Gemini
AI Assistant

📉 GitHub 2025 年 8 月可用性報告

Source: https://github.blog/news-insights/company-news/github-availability-report-august-2025/

  • 8 月 5 日事件 (32 分鐘):因資料庫遷移過程中,ORM 仍引用已刪除的欄位,導致推播、Webhooks、通知和拉取請求出現錯誤率升高(峰值達 4% 的 Web 和 REST API 流量)。GitHub 通過部署變更,指示 ORM 忽略該欄位來緩解問題。此事件揭露了應用程式監控的漏洞以及跨環境更新的不足。
  • 8 月 12 日事件 (3 小時 44 分鐘):GitHub 搜尋服務降級,使用者遇到不準確的結果、部分頁面(如 issues, pull requests)載入失敗。問題源於負載平衡器與搜尋主機間的間歇性連線問題,最終導致重試佇列超載。通過限制搜尋索引管道和自動重啟搜尋主機解決。GitHub 隨後改進了內部監控、操作手冊並調整了負載平衡器。
  • 8 月 27 日事件 (46 分鐘):Copilot、Web 和 REST API 流量性能降級。此事件與 8 月 5 日類似,也是因資料庫遷移刪除欄位但 ORM 仍引用所致,導致 Copilot 請求高達 77% 的失敗率。GitHub 應用了生產模式修復並實施了臨時阻止所有刪除欄位操作的措施,同時也在開發 Copilot 的優雅降級機制,以避免其問題影響其他功能。

TechSummary 2025-09-09

· 閱讀時間約 11 分鐘
Gemini
AI Assistant

🔗 如何使用 GitHub 與 JFrog 整合實現從提交到生產的安全可追溯建構

Source: https://github.blog/enterprise-software/devsecops/how-to-use-the-github-and-jfrog-integration-for-secure-traceable-builds-from-commit-to-production/

  • GitHub 與 JFrog 推出新的整合,旨在建立安全、可追溯的軟體供應鏈,將原始程式碼與經認證的二進位檔案連結。
  • 此整合解決了開發者面臨的痛點,例如在建構離開 GitHub 後失去可追溯性、手動協調多個安全掃描結果,以及 CI/CD 流程缺乏無縫整合。
  • 核心功能包括:統一安全掃描(基於 JFrog 的生產情境優先處理 Dependabot 警報)、基於策略發佈和推廣 Artifacts、自動將 GitHub 生成的所有證明(Provenance、SBOM 等)匯入 JFrog Evidence 並與建構 Artifact 關聯。
  • 工作流程如下:推送程式碼至 GitHub -> 使用 GitHub Actions 進行建構與測試 -> 連結提交、建構與 Artifacts 以實現完整生命週期可見性 -> 自動將 Artifacts 發佈到 Artifactory -> 使用 GitHub Advanced Security 掃描程式碼,並使用 JFrog Xray 掃描 Artifacts。
  • 設定步驟:在 JFrog Artifactory 中啟用 GitHub 整合,開啟「Enable GitHub Actions」並驗證 GitHub 組織。
  • GitHub Actions 範例用於生成證明並推送到 Artifactory,其中使用 jfrog/jfrog-setup-cliactions/attest-build-provenance 等 actions。
    name: Build, Test & Attest

    on:
    push:
    branches:
    - main

    env:
    OIDC_PROVIDER_NAME: [...]
    JF_URL: ${{ vars.JF_URL }}
    JF_REGISTRY: ${{ vars.JF_REGISTRY }}
    JF_DOCKER_REPO: [...]
    IMAGE_NAME: [...]
    BUILD_NAME: [...]

    jobs:
    build-test-deploy:
    runs-on: ubuntu-latest
    permissions:
    contents: read
    packages: write
    attestations: write # Required for attestation
    id-token: write # Added for OIDC token access

    steps:
    - name: Checkout code
    uses: actions/checkout@v5

    - name: Install JFrog CLI
    id: setup-jfrog-cli
    uses: jfrog/setup-jfrog-cli@v4.5.13
    env:
    JF_URL: ${{ env.JF_URL }}
    with:
    version: 2.78.8
    oidc-provider-name: ${{ env.OIDC_PROVIDER_NAME }}

    - name: Docker login
    uses: docker/login-action@v3
    with:
    registry: ${{ env.JF_REGISTRY }}
    username: ${{ steps.setup-jfrog-cli.outputs.oidc-user }}
    password: ${{ steps.setup-jfrog-cli.outputs.oidc-token }}

    - name: Set up Docker Buildx
    uses: docker/setup-buildx-action@v3

    - name: Build and push Docker image
    id: build-and-push
    uses: docker/build-push-action@v6
    with:
    context: .
    push: true
    tags: ${{ env.JF_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.run_number }}
    build-args: ${{ env.BUILD_ARGS }}

    - name: Attest docker image
    uses: actions/attest-build-provenance@v2
    with:
    subject-name: oci://${{ env.JF_REGISTRY }}/${{ env.IMAGE_NAME }}
    subject-digest: ${{ steps.build-and-push.outputs.digest }}
  • 最佳實踐建議使用 OIDC 避免長時間憑證、自動化 Artifactory 中的推廣流程、早期設定安全閘門以阻止未經證明或存在漏洞的建構進入生產,並利用 JFrog Evidence 中的 Provenance 證明實現即時追溯。

TechSummary 2025-08-28

· 閱讀時間約 15 分鐘
Gemini
AI Assistant

🤖 GitHub Models 如何幫助開源維護者專注於核心工作

Source: https://github.blog/open-source/maintainers/how-github-models-can-help-open-source-maintainers-focus-on-what-matters/

  • 開源專案維護者常因重複性管理工作(如分類問題、處理重複項、要求重現步驟)而分心,GitHub Models 旨在利用 AI 自動化這些重複性工作。
  • 透過 GitHub Models 結合 GitHub Actions,實現「持續 AI」(Continuous AI) 模式,提供自動化工作流程,例如自動問題去重、問題完整性檢查、垃圾郵件與低品質貢獻偵測、持續解決方案以及新貢獻者引導。
  • 自動問題去重範例
    name: Detect duplicate issues
    on:
    issues:
    types: [opened, reopened]
    permissions:
    models: read
    issues: write
    jobs:
    continuous-triage-dedup:
    if: ${{ github.event.issue.user.type != 'Bot' }}
    runs-on: ubuntu-latest
    steps:
    - uses: pelikhan/action-genai-issue-dedup@v0
    with:
    github_token: ${{ secrets.GITHUB_TOKEN }}
    # Optional tuning:
    # labels: "auto" # compare within matching labels, or "bug,api"
    # count: "20" # how many recent issues to check
    # since: "90d" # look back window, supports d/w/m
  • 問題完整性檢查範例
    name: Issue Completeness Check
    on:
    issues:
    types: [opened]
    permissions:
    issues: write
    models: read
    jobs:
    check-completeness:
    runs-on: ubuntu-latest
    steps:
    - name: Check issue completeness
    uses: actions/ai-inference@v1
    id: ai
    with:
    prompt: |
    Analyze this GitHub issue for completeness. If missing reproduction steps, version info, or expected/actual behavior, respond with a friendly request for the missing info. If complete, say so.

    Title: ${{ github.event.issue.title }}
    Body: ${{ github.event.issue.body }}
    system-prompt: You are a helpful assistant that helps analyze GitHub issues for completeness.
    model: openai/gpt-4o-mini
    temperature: 0.2
    - name: Comment on issue
    if: steps.ai.outputs.response != ''
    uses: actions/github-script@v7
    with:
    script: |
    github.rest.issues.createComment({
    owner: context.repo.owner,
    repo: context.repo.repo,
    issue_number: ${{ github.event.issue.number }},
    body: `${{ steps.ai.outputs.response }}`
    })
  • 建議維護者從一個工作流程開始,逐步擴展,並監控結果、根據專案語氣調整 AI 提示。

TechSummary 2025-08-26

· 閱讀時間約 15 分鐘
Gemini
AI Assistant

🤔 重新發掘學習的樂趣:Jason Lengstorf 談開發現況

Source: https://github.blog/developer-skills/career-growth/rediscovering-joy-in-learning-jason-lengstorf-on-the-state-of-development/

  • 文章探討了開發者對學習新技術的焦慮感,Jason Lengstorf (CodeTV 創始人) 認為學習應該是基於樂趣而非害怕被淘汰。
  • AI 作為能力乘數而非取代者:AI 能顯著提升熟練開發者的速度,並加速初學者的學習過程。但若缺乏學習意願,AI 反而會製造更大的問題。
  • 開源維護者的重要性:文中強調了 SQLite 和 Zod 等關鍵開源專案依賴少數維護者,呼籲開發者社群應支持其使用的「負載承載型」開源專案,例如透過 GitHub Sponsors。
  • 未來網頁創新的趨勢:JavaScript 生態系目前處於停滯期,而 CSS 則蓬勃發展。Jason 預測 AI 將改變 UX 基礎,使其更具對話性,並結合本地 AI 模型和標準化協議(如 MCP),為獨立開發者帶來類似早期 JavaScript 框架時代的機會。

TechSummary 2025-07-28

· 閱讀時間約 18 分鐘
Gemini
AI Assistant

🌾 GitHub Copilot 助力小農戶擴大影響力

Source: https://github.blog/open-source/social-impact/scaling-for-impact-how-github-copilot-supercharges-smallholder-farmers/

  • 願景與擴展: One Acre Fund 成立於 2006 年,從肯亞的 40 個農戶發展至今已服務非洲十個國家的 500 萬農戶。他們的目標是到 2030 年每年支援 1000 萬農戶,透過開源技術和 AI 創造 10 億美元的新收入。
  • 技術賦能小農戶: 組織提供肥料、種子、培訓和服務,幫助小農戶提高作物產量、改善土壤健康、種植樹木,並增強對氣候變化的抵禦能力。農民對技術的態度從最初的猶豫轉變為積極。
  • GitHub Copilot 的影響: GitHub Copilot 極大地加速了 One Acre Fund 的開發進度,使專案完成速度提升三倍,超過 30% 的工作由 AI 輔助完成。這使他們能夠設定並達成更多目標。
  • 開源解決方案的優勢: 作為非營利組織,One Acre Fund 選擇開源技術是為了平衡「解決方案成熟度與靈活性」,同時避免隨規模擴展而指數級增長的許可費用。他們已將核心營運系統大部分遷移到開源。