假设我有一个由三个提交组成的分支,其中一个是空的:
# On branch test
3208910 empty
85c949c bar
0c1a615 foo
Run Code Online (Sandbox Code Playgroud)
我想在根页面上重新定义它,从man页面看来,这--root --keep-empty
正是我需要的.
然而,无论git rebase -i --root
和git rebase -i --root --keep-empty
省略空承诺,让我看看这个计划,而不是:
pick 0c1a615 foo
pick 85c949c bar
Run Code Online (Sandbox Code Playgroud)
如何重新绑定整个分支并同时保留空提交?
PS我需要这个去除分支上的一些第一次提交,我设法通过这个SO答案中filter-branch
描述的实现,但我仍然有兴趣知道是否能够做到这一点.我发现它是Git中的一个错误吗?很难相信这种行为是故意的,但我不确定.rebase
PPS我发现我可以手动编辑计划并添加pick 3208910
.
它与 的两种模式相关git rebase
。
补丁 ID方法应保留空提交,并且是默认行为。
然而,正如正确指出的那样,--root
flag 是“onto NULL”的快捷方式,这会触发分叉点模式。
更多信息可以从以下内容推断:
归档时间: |
|
查看次数: |
3127 次 |
最近记录: |