GIT没有跟踪文件

GIT没有跟踪文件,git,github,aix,Git,Github,Aix,我已经在AIX6.1上安装了GIT,现在面临一些问题 我遵循的步骤顺序如下所示: 我创建了一个文件夹 进入文件夹并初始化非裸存储库 初始化用户名和用户电子邮件 创建一个名为index.html的文件,其中包含一些数据 创建名为newfolder的子文件夹 进入新创建的文件夹 创建一个名为index-2.html的新文件,其中包含一些数据 执行上述所有步骤并发出git status命令后,我得到以下结果: # On branch master # # Initial commit # # Untr

我已经在AIX6.1上安装了GIT,现在面临一些问题

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

  • 我创建了一个文件夹
  • 进入文件夹并初始化非裸存储库
  • 初始化用户名和用户电子邮件
  • 创建一个名为index.html的文件,其中包含一些数据
  • 创建名为newfolder的子文件夹
  • 进入新创建的文件夹
  • 创建一个名为index-2.html的新文件,其中包含一些数据
  • 执行上述所有步骤并发出
    git status
    命令后,我得到以下结果:

    # On branch master
    #
    # Initial commit
    #
    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #       ../index.html
    #       ./
    
    分支主机上的
    #
    #
    #初始提交
    #
    #未跟踪的文件:
    #(使用“git add…”包含在将提交的内容中)
    #
    #../index.html
    #       ./
    
    我知道上面目录中的index.html正在显示,但为什么不显示当前目录中的index-2.html呢


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

    输出显示了两个当前未跟踪的内容:

    • 。/index.html
      –父文件夹中的
      index.html
      文件
    • /
      –当前文件夹,包括其所有内容
    所以它确实检测到您有一个未跟踪的文件,但是因为它也不知道它的文件夹,所以它只显示该文件夹以积累其所有内容

    如果添加文件并使Git跟踪它们,它们将正确显示:

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

    它正在跟踪文件夹。/即当前文件夹。git根本不关心子文件夹(如果我错了,请纠正我)。这意味着如果您有一个包含文件夹foo的存储库,该文件夹已经在存储库中。在foo中添加子文件夹栏,并在foo/bar中创建文件foobar.txt。那么你只会得到:

    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #       ./bar
    
    #未跟踪的文件:
    #(使用“git add…”包含在将提交的内容中)
    #
    #/巴
    
    也就是说如果你做了cd。。在使用git status命令之前,您将获得:

    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #       index.html
    #       newfolder
    
    #未跟踪的文件:
    #(使用“git add…”包含在将提交的内容中)
    #
    #index.html
    #新文件夹
    
    即使你有一个文件在里面


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

    但是我没有在父目录中添加index.html。即使我没有添加该文件,它如何显示在列表中?状态输出总是相对于当前目录。当您进入子文件夹(步骤6)时,
    index.html
    现在位于当前文件夹的父文件夹中。