使用单一提交从其他分支创建新分支

时间:2021-03-18 17:20:31

标签: git

我有 2 个分支(2 个不同版本的项目),其中使用密码推送了一些提交。 很难找到所有这些提交以及所有提交的文件 - 之前大约有 100 次提交,并且发生了多次。实际上,发布了 2 个版本,因此我不想清理历史记录(在这种情况下我认为这很困难),我只想创建新的分支(一个用于版本),其中包含当前版本的代码,但没有所有这些提交(有一些 2k 提交 +) - 我想要类似于新回购的情况 - 就像只有一个初始提交 如何做到这一点 ;) 从控制台?

1 个答案:

答案 0 :(得分:0)

首先你需要创建新的分支:

$ git checkout -b new_branch

然后你可以像这样重置任意数量的提交(这里是 3 个):

$ git reset --soft HEAD~3

或者,您可以重置为特定的 SHA1 哈希:

$ git reset --soft 3171739

然后您可以检查提交到分支的日志:

$ git log

请注意,您的任何工作都不会被销毁,但某些文件可能未被跟踪,因此您必须在之后添加它们。我希望这能回答您的问题。