今日已更新 280 条资讯 | 累计 20750 条内容
关于我们

标签:#git

找到 1112 篇相关文章

AI 资讯

You're Not Doing GitOps (You're Doing CI/CD With Extra Steps)

The Uncomfortable Truth Here's a test: when your deployment fails in production, what happens to your main branch? If the answer is "the broken code is already merged" — congratulations, you're doing CI/CD with a Git trigger. That's not GitOps. It's a pipeline that happens to watch a branch. I've spent years building platform engineering systems at enterprise scale — identity management frameworks, infrastructure-as-code pipelines, AI agent platforms that manage operational code. And I keep seeing the same mistake: teams adopt "GitOps" by adding a deployment step after merge, then wonder why they get drift. True GitOps has one non-negotiable rule: main always equals production. If a deployment fails, main doesn't change. Period. This isn't just my opinion — it's the logical extension of OpenGitOps principles : declarative desired state, versioned in Git, automatically reconciled. The enforcement mechanism I'm describing is how you make those principles real rather than aspirational. The Anti-Pattern Everyone Runs The most common "GitOps" setup I see in enterprise teams looks like this: Developer opens PR CI runs tests Reviewer approves PR merges to main Deployment triggers from main ❌ Deployment fails main now contains code that isn't in production This is merge-then-deploy . It's standard CI/CD with extra steps. The moment you merge before confirming a successful deployment, you've broken the core GitOps contract: Git as the single source of truth for what's actually running. The result? Drift. Stale state in main . A branch that lies about what's deployed. Every subsequent PR is now based on a broken foundation. The Enforcement Pattern: Deploy Before Merge The fix isn't philosophical — it's mechanical. GitHub's Merge Queue gives you exactly the right primitive: Developer opens PR CI runs tests (standard checks) Reviewer approves → PR enters the merge queue Merge queue trigger runs a dry-run deployment against the target environment If dry-run passes → queue trigge

2026-06-06 原文 →
AI 资讯

I Finally Shipped FlowDesk — My All-in-One Productivity Dashboard Built with GitHub Copilot ⚡

This is a submission for the GitHub Finish-Up-A-Thon Challenge What I Built FlowDesk is a fully offline, production-quality productivity dashboard that combines three tools I always wanted in one place — a habit tracker, a Pomodoro focus timer, and a Kanban task board — all in a single beautiful React app with zero backend and zero accounts required. 🔗 Live Demo: https://flow-desk-lovat.vercel.app/ 💻 GitHub: https://github.com/red-coder-27/flow-desk Everything runs entirely in your browser via localStorage. Your data never leaves your device. Core Features 🎯 Habit Tracker GitHub-style 84-day contribution heatmap Streak tracking with fire badges 🔥 Emoji + color customization per habit Confetti celebration when you hit 100% for the day 🎉 Daily/Weekdays/Weekends frequency options ⏱️ Pomodoro Focus Timer Animated SVG countdown ring with glow effect Web Audio API chimes — no audio files needed Session history log with weekly focus stats Keyboard shortcuts: Space / R / S from any page Auto-switches between work and break sessions 📋 Kanban Task Board Full drag-and-drop via @dnd-kit (mouse + touch) Priority badges: 🔴 High / 🟡 Medium / 🟢 Low Live search + priority filter Three columns: To Do → In Progress → Done 📊 Unified Dashboard Real stats pulled from all three modules Weekly focus bar chart (Recharts) Daily motivational quote Quick-action buttons to jump into any module And more: Dark/Light/System theme, PWA installable, full keyboard shortcuts, data export/import, mobile bottom nav, glassmorphism UI. Demo 🚀 Try FlowDesk Live → Works best in Chrome. Install as a PWA for the full experience (look for the Install button in the top nav). Screenshots: Loom walkthrough video here: https://www.loom.com/share/f3c750d782694baf876229ab598695dc The Comeback Story Where It Started (The "Before") I originally started FlowDesk about 6 months ago during a weekend hackathon. The idea was simple: I was tired of switching between three different apps — one for habits, one for a Pomodoro

2026-06-06 原文 →