2013-01-15 123 views
2

我在AIX 6.1上安装了GIT,并且遇到了问题。GIT没有跟踪文件

的步骤我遵循的顺序如下所示:

  1. 我创建文件夹。
  2. 去到该文件夹​​并初始化非纯仓库
  3. 初始化的用户名和用户电子邮件
  4. 创建一个名为index.html与文件中的一些数据文件。
  5. 创建一个名为newfolder的子文件夹
  6. 进入新创建的文件夹。
  7. 创建一个名为index-2.html的新文件,其中包含一些数据。

执行所有上述步骤,并给予git status命令我得到的结果FOLL后:

# On branch master 
# 
# Initial commit 
# 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
#  ../index.html 
#  ./ 

我明白的index.html在上面的目录是越来越显示偏偏doesent首页 - 2.html没有显示在当前目录中。

文件index-2.html也应该跟踪正确。

回答

5

输出显示两件事情,目前未追踪:

  • ../index.html - 在index.html文件中的父文件夹
  • ./ - 当前文件夹,包括其所有内容

所以确实检测到你有一个未跟踪的文件,但是因为它对它的文件夹一无所知,它只是显示文件夹来累积它的所有内容。

如果你把你的文件,使Git的跟踪他们,他们会正确显示:

git add index-2.html 
git add ../index.html 
+0

但我没有在父目录中添加index.html。即使我没有添加文件,它在列表中是如何显示的 –

+0

状态输出总是相对于当前目录。当你进入子文件夹(第6步)时,“index.html”现在位于当前文件夹的父目录中。 – poke

2

据跟踪,这意味着当前文件夹中的文件夹./。 git不会(如果我错了,请纠正我),关心子文件夹。这意味着您是否拥有一个已经存在于存储库中的文件夹foo的存储库。你在foo中添加一个子文件夹栏,并在foo/bar中创建一个foobar.txt文件。然后,你将只能得到:

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

这意味着,如果你做了CD ..你的git status命令之前,你会得到:

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

即使你有一个文件中。

原因是git跟踪内容而不是文件。由于index2.html实际上是文件夹newfolder的内容,并且您没有跟踪新文件夹,所以git不知道index2.html存在。