Checkout / Rollback特定提交ID GIT(可能重复)

时间:2015-10-06 05:28:39

标签: c# asp.net-mvc git visual-studio-2015 rollback

我有三次提交,但我想检查最后一次提交并从那里开始工作。但是也保留其他提交,即当我再次提交它将是一个新的提交,不会搞砸我的其他提交:)

  

它也可能是一个重复的问题,但因为它是一个至关重要的问题   我已经问了我自己的问题。

如果有任何GUI解决方案,请选择该解决方案,因为我是GIT的新成员:)

有人给我的最佳答案是:git checkout -b old-state 0d1d7fc32但我无法做到这一点:S

此外,如果我还原两次以结帐第三次提交,它会删除前两次还原的提交吗?

Issue

2 个答案:

答案 0 :(得分:0)

我不知道您使用的是哪种GUI工具。我总是使用CLI。但理论是一样的。

  1. 创建一个新的分支“branchA”,引用最新的提交98ea8a1d

  2. 硬重置当前分支“feature / RPG ......”提交f6f69dc1

  3. 因此,最后两个提交受branchA保护。并且当前分支将回滚到f6f69dc1。你可以从f6f69dc1做一些事情。

答案 1 :(得分:0)

如果我理解正确,您需要使用git checkout <commit_hash> <new branch>签出过去的分支提交。在new branch进行更改,然后您可以合并。

但它仍然意味着直接在三次提交之前进行新的更改,那么为什么要这样做?

对于您的第二个问题git revert将取消您的提交,但它们将始终在您的历史记录中,以便您以后可以使用