在错误分支上写了代码,需要把代码迁移到正确分支

📌 分支迁移完整操作指南

你现在的情况是:在错误分支 feature-edm-2612 上写了代码,需要把代码迁移到正确分支 feature-edm-2626,下面给你两种最稳妥、可落地的方案,你可以根据自己的情况选择。
🔍 先确认当前状态
先执行命令,确认当前分支和代码状态:

# 查看当前所在分支
git branch

# 查看未提交的代码改动
git status

你会看到当前分支是 feature-edm-2612,并且有未提交的修改。

方案一:最稳妥(推荐):暂存代码 → 切分支 → 恢复代码

适用场景:代码还没提交,只是本地修改,不想保留错误分支的记录,干净迁移。
完整操作步骤

# 1. 暂存当前所有未提交的代码改动(不会丢失,只是临时存起来)
git stash

# 2. 切换到正确的目标分支 feature-edm-2626
# 如果分支不存在,先拉取远程分支到本地:
git fetch origin feature-edm-2626
git checkout -b feature-edm-2626 origin/feature-edm-2626
# 如果分支已经存在,直接切换:
git checkout feature-edm-2626

# 3. 把刚才暂存的代码恢复到当前正确分支
git stash pop

# 4. 检查代码是否完整恢复,确认无误后提交
git status
git add .
git commit -m "HLY: 观存飞书模式同步项目问题优化"

# 5. 推送到远程对应分支(和任务关联)
git push origin feature-edm-2626

关键说明
git stash 会把你当前所有未提交的修改 “打包存起来”,切分支后用 git stash pop 恢复,代码 100% 还原,不会丢失。
操作完成后,feature-edm-2612 分支会回到你写代码前的干净状态,不会有多余提交。

方案二:提交代码 → cherry-pick 迁移(适合已提交代码)

适用场景:你已经把代码提交到了 feature-edm-2612 分支,需要把提交记录迁移到正确分支。
完整操作步骤

# 1. 先把当前错误分支的代码提交(确保提交记录存在)
git add .
git commit -m "临时提交:飞书同步优化(待迁移)"

# 2. 记录这次提交的 commit ID(复制输出的哈希值,前6位即可)
git log --oneline -1

# 3. 切换到正确分支 feature-edm-2626
# 分支不存在则先创建:
git fetch origin feature-edm-2626
git checkout -b feature-edm-2626 origin/feature-edm-2626
# 分支存在则直接切换:
git checkout feature-edm-2626

# 4. 把刚才的提交迁移到当前分支(把 <commit-id> 替换成你刚才复制的ID)
git cherry-pick <commit-id>

# 5. 解决可能的冲突(如果有),然后提交
git add .
git commit -m "HLY: 观存飞书模式同步项目问题优化"

# 6. 推送到远程
git push origin feature-edm-2626

# 7. 【可选】清理错误分支的提交(避免污染)
git checkout feature-edm-2612
git reset --hard HEAD~1  # 撤销刚才的临时提交,恢复分支原样
posted @ 2026-04-14 16:10  okkk!!!  阅读(52)  评论(0)    收藏  举报