拉取与合并:如何让个人分支既包含你昨天的修改,也包含 develop 最新更新

场景:

我现在在crjdevelop,我昨天拉取了develop的最新代码到我的crjdevelop分支上上面,并在crjdevelop分支上对昨天的最新代码做了修改,但是今天develop又更新了代码,我要如何同步拉取最新代码,并合并我修改的代码

第一步:保存并备份你当前的修改

复制代码
cd ~/autoware_ws/lubo_auto_car/luobopnc

# 1. 确保在你的分支上
git checkout crj_develop

# 2. 提交本地修改 (也可以用图形化进行操作)
git add .
git commit -m "xxxxxxxxxxxxxx"

# 3. 立即推送到远程备份
git push origin crj_develop

第二步:拉取并合并 develop 的最新代码

现在你的修改已经存入 Git 仓库了,可以放心地把远程的 develop 拉下来跟你的代码合并。

(这步和之前一样,如果遇到冲突就去 VS Code 里解冲突)

复制代码
# 直接拉取远程 develop 并合并到当前分支
git pull --rebase origin develop

你执行 git pull --rebase origin develop 后,Git 做了这几件事:

  1. 撤下 :把你 crj_develop 分支上你自己写的、还没推送到 develop 的提交(Commits)先暂时"拿下来"放在一边。

  2. 更新 :把 crj_develop 的基准点(Base)移动到远程 origin/develop 的最新位置(也就是把你同事们的最新代码拉下来垫在最下面)。

  3. 放回 :把你刚才"拿下来"的那些提交,一个一个地重新应用(Re-apply)到最新的代码之上。

现在,你的 crj_develop 分支既包含了大家最新的代码,也包含了你自己的修改,而且你的修改是在"最上面"的。


第三步:处理冲突(如果发生)

如果在执行第二步时提示 CONFLICT (冲突),说明你修改的文件和 develop 更新的文件重叠了。

  1. 打开 VS Code 的源代码管理面板(左侧像树杈的图标)。

  2. 在 "Merge Changes" 列表中点击冲突文件。

  3. 在编辑器中选择:

    • Accept Current Change(保留你的)
    • Accept Incoming Change(使用 develop 的)
    • 或者手动编辑保留两者。
  4. 解决完所有文件的冲突后,执行命令完成合并:

    随便修改一点打印的东西
    git add .
    git commit -m "Vx.x之上合并了几月几号几时的develop"
    git push --force-with-lease origin crj_develop

此时,你的 crjdevelop 分支就既包含你昨天的修改,也包含 develop 最新的更新了。

相关推荐
ZhengEnCi2 小时前
09bad-斯坦福CS336作业一-构建优化器
人工智能
ZhengEnCi3 小时前
09bac-斯坦福CS336作业一-实现训练损失计算
人工智能
冬奇Lab3 小时前
Skill 系列(01):Skill 评测体系——如何量化一个 AI Skill 的质量
人工智能
IT_陈寒6 小时前
Redis内存爆了,原来我漏掉了这个致命配置
前端·人工智能·后端
大大大大晴天7 小时前
Hudi技术内幕:Key Generation原理与实践
大数据
用户3521802454758 小时前
🎆从 Prompt 到 Skill:让 Spring AI Agent 学会"装新技能"
人工智能·spring boot·ai编程
米小虾8 小时前
手把手教你搭建第一个生产级AI Agent:从选型到实战的完整指南
人工智能·agent
任沫8 小时前
Agent之Function Call
javascript·人工智能·go
米小虾9 小时前
2026年AI Agent全面爆发:从开源生态到企业级应用的进化之路
人工智能·agent
用户6919026813399 小时前
Vibe Coding 开发项目的基本范式
人工智能·设计模式·代码规范