如果我有以下提交
38deab3 Bug Fix# 10
f33fb65 Bug Fix# 20
4fa0485 Bug Fix# 30
为什么
git rebase -i f33fb65
允许我编辑 38deab3 而不是 f33fb65?为什么我有运行
git rebase -i 4fa0485
编辑 f33fb65?Source.
最佳答案
git rebase 似乎 rebase 到指定的提交(无论你是通过提交 SHA 还是例如 HEAD~4
)。
所以你应该使用提交相关符号来选择你知道并想要修改的提交! 🎉
$ git rebase -i <SHA>~1
这包括您指定的提交(作为您之前的提交)
语法 :
$ git rebase -i <SHA>~<number>
这将从最近的提交中选择,直到不包括
<number>
比您选择的提交更多!例子
使用如下示例提交历史记录:
aaa first commit
bbb add a function
ccc add terrible colour scheme
ddd another function
eee my most recent function
并且您想删除提交
ccc
中可怕的配色方案更改您将输入并获得以下输出。
$ git rebase -i ccc~1
pick ccc add terrible colour scheme
pick ddd another function
pick eee my most recent function
关于git - 重新设置特定的 SHA1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18585199/