假设我正在开发一个分支'devel',我想从几个提交中恢复'devel'的状态,而不是覆盖它们之间的提交。任何人都可以通过一种相对简单的方式帮助我吗?
答案 0 :(得分:0)
您始终可以git checkout
之前的提交将提交状态转换为您的工作副本。然后将其提交回仓库。来自您的回购根的git checkout <sha> -- .
之类的东西应该这样做。此语法不会更新HEAD
,只会更新索引和工作副本。
答案 1 :(得分:0)
您可以执行git checkout -b newbranch commit
,即git commit -b new HEAD~5
(或询问gitk
提交的SHA2)。因此,你在给定的点开始一个新的分支。
请注意,只有git checkout commit
才会让您进入&#34;分离头部&#34; state,你定位在提交,但它在空间中浮动,未连接。在此状态下完成的更改未集成到存储库中。