如果有一些更改添加到索引中,而有一些更改未添加到索引中,我如何交换这两组更改?
它认为这对于临时提交来说是最容易做到的。当您有暂存和未暂存的提交时,在尝试对更改重新排序时可能会发生冲突。
对分阶段的更改进行提交,创建一个分支供以后使用:
git commit -m "Saved staged"
git branch save-staged
提交未暂存的更改(如果未暂存的更改包含新文件,您可能需要显式git add
首先是他们):
git commit -a -m "Unstaged changes"
将未暂存的更改重新设置到原始 HEAD 上(可能涉及冲突解决):
git rebase --onto HEAD^^ HEAD^
将分阶段的更改重新设置为未分阶段的更改(可能涉及冲突解决):
git reset --hard save-staged
git rebase --onto HEAD@{1} HEAD^
最后,将索引重置为(最初)未暂存的更改:
git reset HEAD^
并将分支指针移回到原来的HEAD:
git reset --soft HEAD^
删除临时分支:
git branch -D save-staged
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)