关于Git:Git – 来自先前提交和拆分提交历史的分支


Git - branch from previous commit and split commit history

本问题已经有最佳答案,请猛点这里访问。

是否可以采用以下设置并根据提交历史将分支有效地拆分为两个分支?

例如:从以下分支开始并提交历史记录:

1
2
3
4
5
6
7
branch 1

git log:
commit 1
commit 2
commit 3
commit 4

commit 3的ID上创建branch 2并将其更改为以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
branch 1

git log:
commit 1
commit 2

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

用例:我在一个尚不在master中的现有分支上启动了一个新特性,并向该分支提交了大量工作。我想在工作前把最后一份工作分开,把我的工作带到我身边,把我所有的工作都清理干净。


您可以执行git checkout some_commit_sha以转到特定的commit,而git checkout -b some_branch_name以从commit创建一个分支并转到该分支。

把这两个放在一起,你就可以做git checkout -b some_branch commit_2_sha