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 ,既安全又直观。

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

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

相关推荐
liuyouzhang2 小时前
将基于Archery的web数据库审计查询平台封装为jdbc接口的可行性研究(基于AI)
前端·数据库
码事漫谈7 小时前
大模型输出的“隐性结构塌缩”问题及对策
前端·后端
这儿有一堆花8 小时前
前端三件套真的落后了吗?揭开现代 Web 开发的底层逻辑
前端·javascript·css·html5
.Cnn8 小时前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
醉酒的李白、8 小时前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
anOnion9 小时前
构建无障碍组件之Window Splitter Pattern
前端·html·交互设计
NotFound4869 小时前
实战分享Python爬虫,如何实现高效解析 Web of Science 文献数据并导出 CSV
前端·爬虫·python
徐小夕9 小时前
PDF无限制预览!Jit-Viewer V1.5.0开源文档预览神器正式发布
前端·vue.js·github
WangJunXiang69 小时前
Haproxy搭建Web群集
前端
吴声子夜歌10 小时前
Vue.js——自定义指令
前端·vue.js·flutter