🔹 日常开发流程(每天循环)
1. 上班第一件事:同步主干,保证基于最新代码开发
git fetch origin main git merge origin/main2. 写代码,开发完成后提交
git add . git commit -m "【20260402】基金规模优化:补充测试记录" git push origin hjs-funds-04023. 下班前:再同步一次主干,避免第二天冲突
git fetch origin main git merge origin/main(有冲突就解决,再提交推送)
【合并冲突】
一、先认清:Git 冲突标记长啥样?
打开冲突的文件(比如基金规模配置文件),会看到这3 行固定标记:
<<<<<<< HEAD // 1. 这行是冲突开头(你的代码) 43.63 M → 4.363 亿 // 你写的代码 ======= // 2. 这行是分隔线 43.63 M → 4.36 亿 // 同事写的代码 >>>>>>> origin/main // 3. 这行是冲突结尾(同事的代码)二、3 秒删除冲突标记(核心操作)
规则:只删上面 3 行标记,不删业务代码
- 删除
<<<<<<< HEAD这行 - 删除
=======这行 - 删除
>>>>>>> origin/main这行 - 保留你需要的代码(要么留你的,要么留同事的,要么合并)
举个实际例子(你直接照改)
改之前(有冲突):
中文繁体展示: <<<<<<< HEAD 43.63 M → 4.363 億 ======= 43.63 M → 4.36 億 >>>>>>> origin/main改之后(无冲突,保留你的代码):
中文繁体展示: 43.63 M → 4.363 億三、删完后,告诉 Git「冲突解决了」
- 保存修改后的文件
- 执行 2 条命令:
# 第一步:标记冲突已解决(替换成你的冲突文件名,比如 funds.js) git add 你的冲突文件名.js # 第二步:完成合并(直接回车,不用改提示信息) git commit四、关键提醒(别踩坑)
- 绝对不要删自己写的代码,只删 3 行冲突标记
- 代码保留哪部分,你自己决定(要你的、要同事的、或合并都可以)
- 删完保存后,文件里看不到 <<< / === / >>> 就算成功
总结
- 找3行冲突标记 → 删掉
- 保留正确代码 → 保存
- 执行
git add+git commit→ 搞定
🔹 需要合并主干分支时,github提PR合并流程(功能开发完成后)
1. 先同步主干,解决所有冲突
git fetch origin main git merge origin/main(手动解决冲突文件)
2. 提交合并结果,推到你的分支
git add . git commit -m "【20260402】合并main主干,解决冲突" git push origin hjs-funds-04023. 去gitlab代码平台提PR,合并到main
4. 合并完成后,切回main拉取最新代码,重建新分支
# 离开你原来的开发分支,回到「最新、最稳定」的主代码分支 git checkout main # 把同事最新提交的代码(比如基金单位、繁体展示规则)更新到本地主干 git pull origin main # 把你之前写代码的旧分支 hjs-funds-0402 删掉 git branch -d hjs-funds-0402 # 在最新的主干代码上,开一个全新的分支,名字叫 hjs-funds-0402-new git checkout -b hjs-funds-0402-new # 把新分支推送到远程仓库 git push origin hjs-funds-0402-new### 一、先确认:你现在已经在新分支上了
执行完 `git checkout -b hjs-funds-0402-new` 后,Git 已经**自动帮你切换到新分支**了
不用再手动切,直接写代码就行!
可以用这条命令验证(看带 `*` 的就是当前分支):
git branch 输出会是: ``` main * hjs-funds-0402-new # ✅ 你就在这里,正确 ```### 二、后续全程只做这 3 件事(极简流程)
#### 1. 直接在新分支写代码
写你的基金规模逻辑、繁体适配、单位转换……**随便写,完全安全**
(新分支是最新主干,无冲突、无混乱代码)
#### 2. 写完提交推送(和之前一样)
git add . git commit -m "【20260402】基金规模优化:xxx" git push origin hjs-funds-0402-new#### 3. 日常同步主干(避免冲突,5秒搞定)
上班/中途/下班前,执行一次:
git fetch origin main git merge origin/main### 三、绝对不用碰的东西
1. **旧分支 `hjs-funds-0402`**:已经删了,彻底忘掉
2. **主干 `main`**:只用来同步代码,**永远不在 main 上写代码**