我刚刚对错误的分支做了很好的提交.如何撤消我的主分支中的最后一次提交,然后进行相同的更改并将它们放入我的升级分支?
我在master分支中做了几次提交,然后将它们合并到dev分支.
我想从dev分支中的特定提交创建一个分支,它首先在master分支中提交.
我使用了命令:
git checkout dev
git branch <branch name> <commit id>
Run Code Online (Sandbox Code Playgroud)
但是,这会从master分支创建分支,而不是我期望的dev分支.master分支和dev分支中的commit id相同.那么,我如何区分不同分支中的相同提交ID?
PS:我在github上做了一个例子https://github.com/RolandXu/test_for_branch
我使用了命令:
git checkout dev
git branch test 07aeec983bfc17c25f0b0a7c1d47da8e35df7af8
Run Code Online (Sandbox Code Playgroud)
我期望的是测试分支包含aa.txt bb.txt cc.txt.但是,测试分支仅包含aa.txt和cc.txt.它很可能是从主分支创建了分支.
这涉及:如何从旧提交创建新的 Git 分支? 关于在基于 commit-id 的存储库上从命令行创建所需的新分支
差不多,
git checkout -b ini_commit_ref_branch cf05eed4fbd76e30615e3876ead9ddb7c5593cd8 # eg commit
git push --set-upstream origin ini_commit_ref_branch
Run Code Online (Sandbox Code Playgroud)
但是如何在 Github WebUi 中实现相同的目标 - 作为创建远程分支的选项,我们只能在现有分支上而不是从提交哈希中获得。我们在 web-ui 中有那个功能吗?
当我们遍历 repo 中针对选定分支的提交历史记录时,我们看到的所有内容都在图标下方。
我曾经git revert撤消已经提交并推送到我的开发分支的更改(这是我第一次使用此命令)并且一切顺利,但我需要知道是否可以:保持dev的方式,但是取回那些暂时更改,然后将它们添加到一个新的分支(不想与dev工作)?