如果我有N个提交,我如何从N-3个提交分支?
当前回答
使用GitHub Desktop,显示历史窗格,右键单击所需的提交,然后选择菜单项“从提交创建分支”。
其他回答
要在github.com上执行此操作:
转到您的项目。单击“提交”。单击要从中分支的提交上的<>(“浏览历史记录中此时的存储库”)。单击左上方的“树:xxxxxx”。就在语言统计栏下方,您将看到“查找或创建分支”选项(只需在那里键入新的分支名称)
git checkout -b <branch-name> <sha1-of-commit>
魔法可以通过git重置来实现。
创建一个新的分支并切换到它(因此所有最新的提交都存储在这里)git结帐-b your_new_branch切换回以前的工作分支(假设它是主分支)切换到主分支删除最新的x个提交,保持master干净git reset--hard HEAD~x#在您的情况下,x=3
从这一刻起,所有最新的x提交都只在新分支中,不再在上一个工作分支(master)中。
如果您正在寻找基于命令行的解决方案,可以忽略我的答案。我建议你使用GitKraken。这是一个非凡的git UI客户端。它在主页上显示Git树。你可以看看他们,知道项目的进展。只需选择一个特定的提交,右键单击它并选择“在此处创建分支”选项。它将提供一个文本框,用于输入分支名称。输入分支名称,选择“确定”,即可设置。它真的很容易使用。
使用源树[当前使用的版本:3.1.3]
在源树中打开历史记录
它将在主窗口中列出所有提交右键单击所需的提交,然后单击分支。。。选项在新窗口中为分支指定名称,然后单击“创建分支”。新的分支(系统本地)将与其他现有分支一起出现在左侧,您可以将其推到源位置以将其放到存储库中,这样其他用户就可以使用它。
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 在GitHub上有一个公共回购的私人分支?
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式