git 将多个commit id 打包成一个或者是多个commit id

我们有时候会出现频繁提交代码的问题,可能多个commit id 实际上一个作用,为了让git log看起来更清晰,我们会将多个commit id 合并成若干个commit id. 这就涉及到git rebase -i. 通过这条命令,我们可以修改git 提交的顺序, 或者是删除某个commit , 修改某个commit 信息, 下面就详细介绍git rebase -i。

git log //假设下面是当前分支的提交信息
commit-id1
commit-id2
commit-id3
commit-id4
commit-id5

git rebase -i commit-id4 //表示我们希望修改commit-id4之前的commit(包括commit-id4)

git rebase -i commit-id4后会出现这样一个界面。

pick commit-id1 info1
pick commit-id2 info2
pick commit-id3 info3
pick commit-id4 info4 

# Rebase commit-id4 onto commit-id1
#
# Commands:
#  p, pick = use commit
#  e, edit = use commit, but stop for amending
#  s, squash = use commit, but meld into previous commit
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#

 pick 表示git会应用这个补丁,以同样的提交信息(commit message)保存提交。

 squash 表示git会把这个提交和前一个提交合并成为一个新的提交。这会再次调用编辑器,你在里面合并这两个提交的提交信息,还需要提供新的commit 信息。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值