你有没有试过自驾游前反复改行程?今天想去海边,明天又想进山,后天听说某地油菜花开了,又临时加站——结果导航APP里密密麻麻全是标记点,连自己都搞不清哪条是主路线、哪条是绕路试探的岔道。写代码也一样,不搭好分支结构,上线前一通合并,就像没看地图就出发,不是迷路就是抛锚。
主干别乱动,就像高速不随便变道
团队协作时,main(或master)分支得当“京沪高速”用:只跑稳定车流,不修路、不试新车。所有新功能、小调整,都从这里拉出自己的分支,比如:
git checkout -b feat/online-checkin main就像出发前先在地图上另存一条“高铁站接人专线”,不影响主路通行。
功能分支要短命,就像临时绕行不超三天
一个分支别拖着不合并。做完了订酒店页面,测好了,就赶紧合回main;别等攒够五个需求再一起推——那就像把“找停车场”“买水”“问路”“拍合影”全塞进一条绕行路线,越绕越晕。常见节奏是:
feat/xxx:开发中功能(如“支持微信扫码登机”)fix/xxx:紧急修bug(如“值机页金额显示错位”)hotfix/xxx:线上炸了立刻救火(如“航班查询接口超时”)
名字不用多 fancy,让人一眼看懂干啥就行。
部署不是扔代码,是“按表发车”
很多小团队把git push完就当部署完成,其实漏了关键一步:怎么让服务器知道该跑哪个版本?建议配个轻量脚本,比如上线前自动拉取main分支、装依赖、重启服务:
#!/bin/bash
cd /var/www/flight-app
git pull origin main
npm install --production
pm2 restart app.js这比手动连服务器敲命令强多了——就像用高德“一键发起车队”,不用每辆车单独喊出发。
分支不是炫技工具,是帮你看清哪段代码走到了哪一站。下次改需求前,先花30秒建个分支名,比上线后熬夜查是谁动了登录逻辑,省心多了。