将先前的提交分解为多个提交如果没有创建分支并在新分支上做一堆时髦的工作,是否有可能在提交到本地存储库后将单个提交分解为几个不同的提交?
3 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
从git-rebase手册(SPLITTING COMMITS部分)
在交互模式下,您可以使用“编辑”操作标记提交。但是,这并不一定意味着git rebase期望此编辑的结果恰好是一次提交。实际上,您可以撤消提交,也可以添加其他提交。这可以用于将提交拆分为两个:
启动交互式rebase
git rebase -i <commit>^
,其中<commit>
包含要分割的提交。实际上,只要包含该提交,任何提交范围都可以。使用“编辑”操作标记要拆分的提交。
在编辑提交时,执行
git reset HEAD^
。结果是HEAD被一个重绕,索引也随之而来。但是,工作树保持不变。现在将更改添加到您希望在第一次提交中拥有的索引。您可以使用
git add
(可能是交互式)或git gui
(或两者)来做到这一点。使用现在适当的提交消息提交now-current索引。
重复最后两步,直到工作树干净。
继续使用rebase
git rebase --continue
。
添加回答
举报
0/150
提交
取消