将提交设置为root提交

时间:2017-01-08 09:27:36

标签: git

说我有以下历史:

esp-open-sdk

我想将R设置为第一个提交并删除它之前的所有提交但保留从R到A的提交历史记录。结果将是:

commit A
[... list of commits]
commit R
[... list of commits]
commit Z

这可能吗?

1 个答案:

答案 0 :(得分:0)

您可以使用git rebase

git rebase -i HEAD~3

应该给你这样的东西:

pick somehash A
pick somehash R
pick somehash Z

# 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.
#

您现在可以按照您希望的顺序简单地移动提交。

该文档包含有关您可以在提交中应用的各种内容的示例和说明,请阅读以获取更多详细信息。