我正在使用master
分支机构,让我做的就像10 000 commits
一样,如果我要从9876-th commit
开始删除所有提交并放置该怎么办?他们进入单独 branch
(当然分支应该包括我在创建这个新分支之前已经完成的master
分支提交)?
P.S。提交计数不是真实的,我只是在询问如果它是实际提交计数应该怎么做?
答案 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 -
命令它做同样的事情,但文件系统上有目录。)