这里是新手。我做了一些我想放弃的改变。所以我做了一个早期的检查,然后又开始工作了。我不记得我到底做了什么,但下面是我的当前情况(如PyCharm所示):

头在顶部(评论:“台风”)。原版/母版的注释是“重定向的注释”。
我推到github,但是HEAD没有出现在那里。我知道我需要让台风版本成为我现在的起源/主人。我该怎么做?
我是唯一的开发商,没有人会受到任何变化的影响。我不在乎死胡同上的两个版本(以“重定向的注释”结尾)是否被永久删除。
发布于 2022-05-14 21:00:39
您当前处于“分离头”状态中,这意味着没有活动分支。您可以使用以下命令让您的master分支指向当前版本("Typo"):
git switch --force-create master之后,您可以使用--force-with-lease选项进行推送。这是必要的,因为推送将放弃这两个版本“退出并存储.”和“关于.的说明”:
git push --force-with-lease所以我做了一个早期的检查,然后又开始工作了。
正确使用的命令是git reset --hard <commit-ID>。这避免了“分离头”状态。注意,对于该操作后的第一次推送,仍然需要使用--force-with-lease选项。
发布于 2022-05-14 22:42:31
Git中的分支只是一个字符串,一个指向单个提交的名称。当您决定要走错路时,让自己回到“更多的回归”的方法不是使用checkout,而是使用reset --hard,它只是获取当前分支的名称并将其重新定位到指定的任何位置。
现在,您可以使用同样的技术来解决问题!先做一根树枝来支撑你的位置。然后跳回您意外放弃的主指针,并将其重新指向您现在的位置:
git switch -c temp
git switch master
git reset --hard temp您不再需要占位符,所以删除它:
git branch -D temp顺便说一句,这类事情就是为什么你不应该开发的主人-即使你是唯一的用户回购。如果你在一个实验分支上,当你认为你的策略是一个失败,你可以简单地放弃这个分支,转回到大师,并开始一个新的分支与另一个路线的实验。
发布于 2022-07-02 07:29:00
我创建了一个分支:
branch fixed-detached-head。 然后:(即,temp=固定分离头)。然后:git switch fix-detached-head
最好是直接使用git switch -c创建一个分支,从另一个分支/提交,这样,您就可以避免所有“分离头”的情况。
git switch -c newBranch oldBranchOrCommithttps://stackoverflow.com/questions/72243183
复制相似问题