方案:
我有2个分支:dev
和sprint1
sprint1
; sprint1
中添加/提交这些更改,我想在dev
上添加/提交这些更改; dev
而不首先在sprint1
中提交更改,但结帐失败; 我的问题是:如何将sprint1
中的这些更改带到dev
而不将其提交到sprint1
;
答案 0 :(得分:3)
git stash
git checkout dev
git stash apply
git commit
答案 1 :(得分:3)
您可以将本地修改合并到要结帐的分支中。
在sprint1
分支上执行:
git checkout --merge dev
这会将工作目录的本地修改合并到dev
分支并切换到它。这些更改只是合并而未提交。所以你现在可以照常继续。
git add ....
git commit
来自git checkout文档
- 合并
切换分支时,如果对当前分支和要切换到的分支之间的一个或多个文件进行本地修改,则该命令拒绝切换分支以保留上下文中的修改。 但是,使用此选项,当前分支,工作树内容和新分支之间的三向合并已完成,您将进入新分支。