Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我所有的git存储库突然显示所有内容都被删除了?_Git - Fatal编程技术网

为什么我所有的git存储库突然显示所有内容都被删除了?

为什么我所有的git存储库突然显示所有内容都被删除了?,git,Git,文件就在那里,git只是告诉我它们已经从存储库中删除了。这可能是Github的问题吗 我已经导航到我的项目文件夹,这是我几天没有处理过的,我像往常一样运行: git status 但是,状态显示的不是1个或2个文件,而是我的所有文件都已删除。然后,在“Untracked Files”中,它显示了我在approot中需要添加的所有文件和目录 我不知道发生了什么,但我非常担心,自从上次提交以来我所做的任何工作都没有了 我用git k打开了git日志,在顶部我看到: Local changes ch

文件就在那里,git只是告诉我它们已经从存储库中删除了。这可能是Github的问题吗

我已经导航到我的项目文件夹,这是我几天没有处理过的,我像往常一样运行:

git status
但是,状态显示的不是1个或2个文件,而是我的所有文件都已删除。然后,在“Untracked Files”中,它显示了我在approot中需要添加的所有文件和目录

我不知道发生了什么,但我非常担心,自从上次提交以来我所做的任何工作都没有了

我用
git k
打开了git日志,在顶部我看到:

Local changes checked in to index but not committed.
就在下面,我看到:

master    remotes/origins/master
注意:此项目与github数据库相冲突

以下是来自
git status
命令的输出:

➜  mcp5_mobile git:(master) ✗ git status
On branch master
Your branch is up-to-date with 'origin/master'.

Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

deleted:    .gitignore
deleted:    .rspec
deleted:    Gemfile
deleted:    README
deleted:    README.md
deleted:    Rakefile
deleted:    app/assets/images/MSDS_icon_rgb.jpg
deleted:    app/assets/images/MSDS_icon_rgb.png
deleted:    app/assets/images/addtocart.gif
<Continues to list every single file in the app. Over 1,100 files.>

Untracked files:
  (use "git add <file>..." to include in what will be committed)

.gitignore
.rspec
Gemfile
README
README.md
Rakefile
app/
autotest/
colorpicker.css
config.ru
config/
db/
deploy/
doc/
eye.js
features/
layout.css
lib/
public/
sample.xml
script/
spec/
termios/
test/
vendor/
➜  mcp5_移动git:(主)✗ git状态
论分行行长
您的分支机构是最新的“原始/主”分支机构。
要提交的更改:
(使用“git重置磁头…”取消分级)
已删除:。忽略
已删除:.rspec
已删除:Gemfile
删除:自述
已删除:README.md
已删除:Rakefile
已删除:app/assets/images/MSDS_icon_rgb.jpg
已删除:app/assets/images/MSDS_icon_rgb.png
已删除:app/assets/images/addtocart.gif
未跟踪的文件:
(使用“git add…”包含在将提交的内容中)
.gitignore
.rspec
Gemfile
自述
自述文件
耙子
应用程序/
自动测试/
colorpicker.css
config.ru
配置/
分贝/
部署/
医生/
eye.js
特征/
布局规则
解放党/
公开的/
sample.xml
剧本/
规格/
特米奥斯/
试验/
卖主/

这强烈建议您(或您间接调用的对象)删除或至少重命名
.git/index
:1

[旁白:您不需要
-.
,因为这些也是默认值。这更强调的是,我们正在重置
提交中的每个路径。当然,我使用的是默认值-
-提交操作,没有明确指定
。]



1另一方面,可能是您将环境变量
GIT_INDEX
设置为奇数。当未设置
Git\u index
时,Git使用
.Git/index
,因此如果有人设置了它,则会覆盖默认值。

一定是路径问题。前几天我试着安装一些gems,不得不用PATH、PKG_CONFIG_PATH和C_INCLUDE_PATH做一些有趣的事情来编译一些本机库。不管怎样,我重新启动了我的Mac电脑,现在一切都正常了。我不明白它可能是什么,我正在使用相同的git可执行文件,我只是检查了一下。是否有一些git在启动时使用的支持库可能是我搞砸的


我一弄清楚答案就会更新。如果你知道答案,我会奖励你的。我很欣赏SO社区的快速反应,这是一个可怕的问题。

git存储库完全是本地的。因此,这绝对不是github的问题

git status
比较了三种不同的东西。您的头提交、索引和工作树

在您的情况下,文件似乎存在于您的工作树和您的头部,但从索引中删除

正常的
git diff
将工作树与头部提交进行比较如果这个差异看起来不错,您只需执行
git add.
即可将工作树的内容写入索引。或者,您可以使用
git reset
来编写头部提交给您索引的内容

如果您通常担心丢失未提交的更改,那么应该更频繁地提交。未提交的更改通常是不好的,因为git对这些更改一无所知,因此在发生奇怪事故时无法帮助恢复这些更改。

这里也发生了同样的事情(在Mac/Yosemite上)。在笔记本电脑整夜处于睡眠模式后,我所有的本地存储库都显示所有文件都被删除了,需要添加。即使是我已经好几个月没有工作的仓库。我重新启动了我的机器,然后重新启动。一切都好


RD

我认为它并没有告诉您它们已从存储库中删除。它告诉你它们已经从索引中删除了。只需将它们重新添加进去。您能实际显示
git status
的输出吗?很难说。你一生中有没有说过“git rm”
?您是否将此计算机与另一台计算机同步?您是否发出某种全局命令,删除所有名为
index
?:)的文件您是否正在使用某种第三方GUI git界面?(我仍在猜测是什么影响了
.git/index
文件。)或者他添加
就足够了。
?我的索引文件在所有3个项目中都存在。@matt:是的,尽管结果不同。通过在
提交中构建索引,然后可以比较索引和工作目录,以查看是否有内容应该是
git add
-ed(例如,您可能希望在单独的提交中逐段执行)。如果您只是想在之后添加内容,那么您也可以在前面使用“添加”。:-)是的,这将导致
git diff
表明他的作品没有丢失,事实上已经准备好添加。请您详细说明您的答案,再添加一点关于您提供的解决方案的描述,好吗?
$ ls
LICENSE.txt x.txt
$ git status
On branch master
nothing to commit, working directory clean
$ mv .git/index .git/xindex
$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    deleted:    LICENSE.txt
    deleted:    x.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

    LICENSE.txt
    x.txt

$ mv .git/xindex .git/index
$ git status
On branch master
nothing to commit, working directory clean
$ rm .git/index
$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    deleted:    LICENSE.txt
    deleted:    x.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

    LICENSE.txt
    x.txt

$ git reset -- .
$ git status
On branch master
nothing to commit, working directory clean