用 AI 寫了 2 年代碼,我居然還在直接 push main
![]()
說實話,這件事我挺不好意思拿出來說的。
我用 AI 寫代碼兩年了。
Claude、Cursor、GitHub Copilot,哪個火我用哪個。項目做了不少,用戶也有幾百人。
但直到前幾天,我上線了一個 bug。直接影響到了正在使用產品的用戶。我手忙腳亂地回滾,后背全是汗。
復盤的時候才發現——兩年了,我所有的項目都是直接 push 到 main 分支。沒有 CI。沒有測試。沒有分支策略。
我?用 AI 編程兩年多,連最基本的工程規范都沒做?
好吧,今天就全盤托出。
我的問題到底是什么
四個字:沒有防線。
代碼寫好,本地跑一下沒問題,直接git push origin main。部署腳本自動拉最新代碼,用戶下一秒就用上了新功能。
聽起來很高效對吧?直到那次 bug。幾百人同時受影響,我自測發現問題之后,手忙腳亂緊急修復。
分支策略、CI/CD、多環境隔離,我是真的不知道。我一直想的是項目不大,直接 push 沒事的,有問題了就退回覆蓋本機代碼。
結果呢?用戶從幾十人漲到幾百人,我的習慣沒變。直到出了事。
五道防線
出事后我坐下來,一條一條捋清楚。不用一次性全做,可以慢慢疊。
第一件事:別在 main 上寫代碼。
每次開發從 main 切出 feature 分支,做完 PR 再合并回去。GitHub 免費支持,當天就能用。
第二件事:讓機器幫你檢查。
在 PR 合并前自動跑測試、lint、類型檢查。通不過就不能合并。這是你的第一道自動化防線。
第三件事:分環境。
main 自動部署到 staging,你在 staging 上點一點、測一測,確認沒問題再手動上 production。這樣即使代碼進了 main,也不會直接影響真實用戶。
第四件事:小心上線。
藍綠部署、金絲雀發布、特性開關——先讓 1% 的用戶幫你測新版本,沒問題再放量。
第五件事:盯著點。
錯誤率異常自動告警,關鍵指標崩了自動回滾。這是最后的兜底。
道理懂了,習慣怎么養
說實話,看完這五層,我的第一反應是:道理我懂,但養成習慣太難了。
我每天都在用 Claude Code 寫代碼。
寫嗨了誰還記得切分支?改完代碼順手就 push 了,哪有心思去想什么 CI、測試。
然后我想,既然 Claude 天天陪著我寫代碼,能不能讓它來提醒我?
能。我讓它幫我做了一個 skill。
dev-guardian:我的 Claude Code 守門員
這個 skill 不攔截我、不打斷我。它只是在我每次跟 Claude 聊完代碼之后,默默掃一眼當前項目的狀態,然后在回復末尾貼幾行字:
main分支!git checkout -b feature/xxx
無CI。mkdir -p .github/workflows && touch .github/workflows/ci.yml
app/models/user.rb 缺測試
先跑 npm test 再提交全部通過的話,就兩個字:
全綠不想看?說一句guardian off就跳過。下次再提醒。
安裝也很簡單:
mkdir -p ~/.claude/skills/dev-guardian
cp SKILL.md ~/.claude/skills/dev-guardian/SKILL.md重啟 Claude Code,從此每次寫代碼都有人在旁邊碎碎念。
說實話,一開始我也嫌煩。但幾次之后,切分支、補測試、加 CI,這些動作開始變成肌肉記憶。我不需要刻意記,因為每次 Claude 都會提一嘴。
開源了,自取
我把這個 skill 整理完,直接丟到了 GitHub:
https://github.com/JobYu/claude-dev-guardian[1]
README 寫得特別簡單,專門給 vibe coder 看。沒有術語,三步安裝,一個例子。
如果你也一樣——用 AI 寫代碼挺久了,但提交這件事上還在裸奔——可以試試看。
習慣這東西,靠自己硬記是真的難。但有個人每次在旁邊嘮叨你,久而久之就刻進骨子里了。
對了,你現在怎么提交代碼的?還在直接 push main 的話,評論區報個到,咱們一起改 ?♂?有問題隨時問,看到就回。
下次見~
參考資料
https://github.com/JobYu/claude-dev-guardian: https://github.com/JobYu/claude-dev-guardian
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.