2013-01-15 152 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存在。