我不小心在错误的分支上工作。现在我想将所有更改传输到正确的分支。
如果我存储更改并将它们应用于正确的分支,它是否只会将未提交的更改添加到正确的分支或每个更改/提交来自错误的分支,而这些更改/提交在正确的分支上不存在?
例如
错误的分支有:
提交
未提交的更改b
正确分支
如果我在错误的分支上执行git stash并且git将stash应用于正确的分支,它是否会将提交转移到正确的分支?
答案 0 :(得分:12)
我会做一个藏匿,然后重置(混合使你不会丢失更改)提交,藏匿,然后更改为正确的分支并弹出两个stashes。
git stash save "b"
git reset HEAD~
git stash save "a"
git checkout correct-branch
git stash pop
git commit -m "a"
git stash pop
答案 1 :(得分:5)
如果您的分支尚未存在:
若是:
答案 2 :(得分:2)
解决方法强>
git cherry-pick 23h123kjb
(< - 将此哈希值替换为特定于您要引入的提交的git log
中的哈希值)答案 3 :(得分:2)
不,不会。提交没有放入Stash。 我有时也只是在我的更改未提交和取消的情况下切换分支,它也可以工作(不确定是否在每种情况下)。
答案 4 :(得分:0)
你还可以做什么: