1

我刚开始学习 Git 和 Ruby on Rails,在我的 Windows 7 机器上的 cmd 提示符下,我不小心git add -A在我的C:\Users\myusername.

我的所有文件都已添加,但在 Git 上本地未跟踪。显然,我不想删除它们——它们都是我的用户文件。但是,由于它是一个空仓库,我找不到如何取消跟踪它们并清理 git。git statusgit log响应如下。

PS C:\Users\myusername> git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
***All files listed***
nothing added to commit but untracked files present (use "git add" to track)

PS C:\Users\myusername> git log
fatal: bad default revision 'HEAD'
4

3 回答 3

1

您发布的输出git status 与您所描述的不符:

# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
***All files listed***
nothing added to commit but untracked files present (use "git add" to track)

此消息意味着:

  • 是的,我们在一个 Git repo ( On branch master)
  • 我们还没有提交任何东西 ( Initial commit)
  • 目录中存在一堆不属于您的 Git 存储库的文件(Untracked files后跟***All files listed***
  • 并且索引是干净的 ( nothing added to commit)

如果确实如此,那么只需删除.git存在的文件夹C:\Users\myusername(是的,有一个)就可以了。

但是你写的是你做了一个git add -A. 在这种情况下,***All files listed***应该出现在 下Changes to be committed:。尽管如此,在这种情况下,删除您的.git文件夹也不会损害您的文件。它只会删除回购信息。

于 2012-08-17T08:07:35.767 回答
1

没做什么

假设你想在你的主目录中有一个 git repo,你不需要做任何事情,因为:

C:\Users\myusername> git status
# On branch master
#
# Initial commit

这表明您没有当前的 git 历史记录 - 您的 git repo 是空的

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

这是列出存在的、尚未跟踪且未被忽略的文件 - 它列出了所有内容,因为所有内容都是未跟踪的文件。

git添加-A

你没有(通过问题中的 git status 的输出)运行这个命令,至少没有在这个 repo 上运行。如果您确实运行此命令,则 git status 的输出将完全不同。你会看见:

C:\Users\myusername> git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage
***All files listed***

仔细阅读最后两行注释,以及您在问题中的输出。“要提交的更改”和“未跟踪的文件”的含义非常非常不同。在问题中没有添加任何内容。在上面 - 一切都被分阶段提交 - 并且可以取消分阶段git rm -r --cached .

跟踪的文件

跟踪的文件是 git 正在监视更改等的文件。联合国跟踪的文件是其他所有文件-您在问题中所遇到的可能是一个误解。您可以使用此示例序列向自己展示这一点:

cd C:\Users\myusername
rmdir /S .git
git status
# error message
git init
git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
***All files listed***
于 2012-08-17T08:09:25.023 回答
0

只需删除 C:\Users\myusername\.git 文件夹。请注意,它可能是不可见的。

编辑

这可能是您需要的:

git rm -r --cached 。

这不会修改您的文件系统。

于 2012-08-16T17:57:31.740 回答