git rebase -i这个命令不知道怎么用 ?

pick:保留该commit(缩写:p)

reword:保留该commit,但我需要修改该commit的注释(缩写:r)

edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)

squash:将该commit和前一个commit合并(缩写:s)

fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)

exec:执行shell命令(缩写:x)

drop:我要丢弃该commit(缩写:d)
我按照上面这段话, 比如我在本地提交了5次, 只有最后一次的提交信息是我想要的, 我只想保留最后一次的提交信息, 其它4次的提交信息都废弃. 但是代码直接用最新的, 我用git rebase -i之后, 前面4次提交都输入d之后, wq的时候, 报冲突了, 不知道怎么解决..

阅读 1.7k
1 个回答

提交内容想保留、而提交信息(commit message)想舍弃的话,应该用 squash 吧

git rebase -i HEAD~5

pick 一个,squash 其余四个。然后再对 commit 信息 pick 一个,squash 其余四个。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题