git 提交代码到别的分支

你现在的修改还在工作区(或暂存区)里,如果你想把它们直接提交到别的分支,而不污染当前分支,可以这样操作:


方法 1:切换分支再提交(推荐)

perl 复制代码
# 先暂存当前改动
git stash

# 切换到目标分支
git checkout 目标分支

# 取出改动
git stash pop

# 提交到目标分支
git add .
git commit -m "你的提交信息"

# 如果需要推送
git push origin 目标分支

这样改动只会落到目标分支,当前分支不会有任何记录。


方法 2:直接将当前修改提交到别的分支(不切换分支)

如果你的改动已经 git add 到暂存区,可以:

bash 复制代码
git commit -m "你的提交信息"   # 在当前分支生成一次提交
git branch temp                # 创建一个临时分支指向当前提交
git checkout 目标分支
git cherry-pick temp           # 把提交应用到目标分支
git branch -D temp             # 删除临时分支

这样可以不丢改动,但过程稍复杂。


方法 3:用 git commit--work-tree / --git-dir(高级玩法)

如果真的不想切换分支,可以用:

sql 复制代码
git --work-tree=. checkout 目标分支
git add .
git commit -m "你的提交信息"

不过这方式有风险,容易造成冲突,不建议日常用。


我建议你用 方法 1 ,既安全又直观。

如果你愿意,我还可以帮你写一个 一次性命令,直接把当前改动"搬运"到别的分支并保持当前分支干净。

你是想要我帮你做这个"一条命令搞定"的版本吗?

相关推荐
人工智能训练20 小时前
【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
运维·前端·人工智能·python·ai编程·cuda·vllm
会跑的葫芦怪20 小时前
若依Vue 项目多子路径配置
前端·javascript·vue.js
pas1361 天前
40-mini-vue 实现三种联合类型
前端·javascript·vue.js
摇滚侠1 天前
2 小时快速入门 ES6 基础视频教程
前端·ecmascript·es6
珑墨1 天前
【Turbo】使用介绍
前端
军军君011 天前
Three.js基础功能学习十三:太阳系实例上
前端·javascript·vue.js·学习·3d·前端框架·three
打小就很皮...1 天前
Tesseract.js OCR 中文识别
前端·react.js·ocr
wuhen_n1 天前
JavaScript内存管理与执行上下文
前端·javascript
Hi_kenyon1 天前
理解vue中的ref
前端·javascript·vue.js
大卫小东(Sheldon)1 天前
GIM 2.0 发布:真正让 AI 提交消息可定制、可控、可项目级优化
git·rust·gim