Git - 从以前的提交中创建分支并拆分提交历史

3

你是否可以将以下设置有效地将分支拆分为基于提交历史的两个分支?

例如:从以下分支和提交历史开始:

branch 1

git log:
commit 1
commit 2
commit 3
commit 4

commit 3的id处创建分支2并将事物更改为以下内容:
branch 1

git log:
commit 1
commit 2

branch 2
git log: 
commit 1
commit 2
commit 3
commit 4

使用场景:我在一个尚未合并到主分支(master)的现有分支上启动了一个新功能,并提交了一堆工作到该分支。我想要基于我的工作之前的最后一个提交(commit)创建一个新分支,并将我的工作带走,使该分支不再包含我的所有工作。

1个回答

3
你可以使用 git checkout some_commit_sha 命令来切换到特定的提交记录,使用 git checkout -b some_branch_name 命令来从一个提交记录创建分支并切换到该分支。
将这两个命令结合起来,你可以使用 git checkout -b some_branch commit_2_sha 命令。

这正是我所想的,但是否有一个命令可以执行此操作并将更改还原到该提交?我打赌没有,但我想问一下。 - JDillon522

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接