相关疑难解决方法(0)

修复一个Git分离的头?

我在我的存储库中做了一些工作,发现文件有本地更改.我不再想要它们所以我删除了文件,以为我可以签出一份新的副本.我想做Git相当于

svn up .
Run Code Online (Sandbox Code Playgroud)

使用git pull似乎没有用.一些随机搜索引导我到一个有人推荐做的网站

git checkout HEAD^ src/
Run Code Online (Sandbox Code Playgroud)

(src是包含已删除文件的目录).

现在我发现我有一个超然的头.我不知道那是什么.我怎么撤消?

git

1318
推荐指数
19
解决办法
128万
查看次数

如何将HEAD移回以前的位置?(独立头)和撤消提交

在git中,我试图squash commit通过合并另一个分支然后HEAD通过以下方式重置到上一个位置:

git reset origin/master
Run Code Online (Sandbox Code Playgroud)

但我需要走出这一步.如何将HEAD移回上一个位置?

我有23b6772提交的SHA1 frag(),我需要将其移动到.
我怎样才能回到这个提交?

git git-revert git-checkout git-reset git-reflog

141
推荐指数
4
解决办法
17万
查看次数

可以git log --decorate明确告诉我HEAD是否已分离?

我知道,在Git的说法中,"分离的HEAD"对应于符号引用HEAD未指向任何分支的状态.我也知道git branch,例如,会告诉我我是否处于分离-HEAD状态,例如

* (detached from 9a2ef02)
  master
Run Code Online (Sandbox Code Playgroud)

或不,例如

* master
Run Code Online (Sandbox Code Playgroud)

但是,我想知道是否有办法使输出git log --decorate完全明确,我是否处于分离-HEAD状态.这是一个用"明确的"来解释我的意思的例子.

在此输入图像描述

说我在master,我的历史看起来如下:

4d860e9 (HEAD, master) Remove trailing whitespace
9a2ef02 Correct typo in header
f0badb5 Add to-do section to README
Run Code Online (Sandbox Code Playgroud)

案例1:明确的分离-HEAD状态

如果我跑

git checkout 9a2ef02
Run Code Online (Sandbox Code Playgroud)

那么输出git log --decorate --oneline就是

9a2ef02 (HEAD) Correct typo in header
f0badb5 Add to-do section to README
Run Code Online (Sandbox Code Playgroud)

因为HEAD此输出旁边没有列出分支引用,所以我确信我有一个分离的HEAD.

案例2:unached-HEAD状态与否?

但是,如果我跑

git checkout 4d860e9
Run Code Online (Sandbox Code Playgroud)

然后HEAD不指向master,但直接提交 …

git git-log git-detached-head

6
推荐指数
1
解决办法
366
查看次数