【发布时间】:2017-07-23 15:56:36
【问题描述】:
我有一个名为 ChartFeature 的分支,但我不小心输入了 git checkout CHartFeature 并最终在 powershell/poshgit 中输入了这个:
C:\git\Charting [CHartFeature]> git status
On branch CHartFeature
nothing to commit, working tree clean
这里发生了什么?如果我查看 SourceTree,它不会显示分支,但是当我将文件提交到我从未创建的这个分支时,我可以(并且让自己陷入困境)。 (我从未输入过git checkout -b CHartFeature,但我确实需要将其合并到ChartFeature。)
如果我列出本地分支,则此错误分支不存在:
C:\git\Charting [CHartFeature]> git branch
ChartFeature
develop
master
当我输入git checkout CHartFeature 而没有创建那个分支时,git 在做什么?我在那里所做的提交发生了什么?
此外,输入git branch -d CHartFeature 是否安全?如果我这样做会怎样?
【问题讨论】:
-
你在用windows吗?
-
这看起来像是其他人在前一段时间创建了这个分支并意外推送了它。
-
如果您在 Windows 上,文件名(通常)不区分大小写,您可以检查分支的任何大小写组合,但您仍然在正确命名的分支上。我刚刚签出
MAster,提交了更改并检查了日志,看起来不错,然后我签出了master,检查了日志,我的提交存在。我假设git checkout X只是检查是否有可以在 refs 文件夹下以该名称打开的文件,并且在 Windows 上存在,即使实际文件名是x。 -
@LeGEC 是的,Windows 7
-
@ckruczek 不,绝对不是。
标签: git git-branch git-merge