Git在最近提交之前从N次提交开始添加分支

时间:2015-10-20 21:27:55

标签: git version-control

我正在使用master分支机构,让我做的就像10 000 commits一样,如果我要从9876-th commit开始删除所有提交并放置该怎么办?他们进入单独 branch(当然分支应该包括我在创建这个新分支之前已经完成的master分支提交)?

P.S。提交计数不是真实的,我只是在询问如果它是实际提交计数应该怎么做?

1 个答案:

答案 0 :(得分:2)

如果您知道第9876次提交的提交哈希的开始,则可以签出该单个提交。例如:

git checkout 8f3faf -b branch_name

或者如果您知道要返回的提交数量,您可以从HEAD分支。 使用您的示例,您想要返回124次提交

git checkout HEAD~124 -b branch_name

在此特定方案中,我们希望 master 上的所有当前提交都位于单独的分支中。然后我们想要回滚主N-commits。

主人:

git checkout -b branch_name
git checkout -
git reset --hard HEAD~N

现在将重置为N次提交,新分支 branch_name 将在 master 之前提交N次提交。

暂且不说:git checkout -是一个简写,用于签出您所在的最后一个分支(在本例中为 master 分支)(类似于cd -命令它做同样的事情,但文件系统上有目录。)