首页 > 解决方案 > 指向旧提交的分支

问题描述

我正在处理一个测试失败的项目,因此我决定检查一个旧提交以查看可能导致问题的代码更改。我做到了git checkout OLD_COMMIT_HASH。这很好,但是我似乎无法再让分支默认为最新的分支。

我已经完成了git checkout LATEST_COMMIT_HASH,但是如果我然后检查 master 并git checkout BRANCH_NAME检查旧的提交,我该如何修复分支并将其指向正确的提交?

标签: git

解决方案


当您在提交哈希上签出时,您不是一个分支,您只是处于指向该特定提交的暮光区,在您的分支历史的某个地方。

只是git checkout <branch_name>为了回到你的分支。

在签出提交时,您还会收到一条消息,说明您处于“分离”状态,这意味着您不在任何分支上:

您处于“分离 HEAD”状态。您可以环顾四周,进行实验性更改并提交它们,并且您可以放弃在此状态下所做的任何提交,而不会通过执行另一个签出来影响任何分支。

如果您想创建一个新分支来保留您创建的提交,您可以(现在或以后)再次使用 -b 和 checkout 命令来执行此操作。


推荐阅读