簡體   English   中英

Git-列出根目錄中的每個文件后,“沒有添加任何內容來提交但存在未跟蹤的文件”

[英]Git - “nothing added to commit but untracked files present” after listing every file in root

我正在嘗試將某些文件提交給Github和GitHub Pages分支。 作為回應,它列出了我根目錄中的每個文件夾后,顯示“沒有添加任何內容,但存在未跟蹤的文件”。 我的項目在我的Documents文件夾內的一個文件夾內。 有誰知道為什么會這樣?

    On branch gh-pages
Untracked files:
    ../../.atom/
    ../../.bash_history
    ../../.gimp-2.8/
    ../../.gitconfig
    ../../.gradle/
    ../../.idlerc/
    ../../.jssc/
    ../../.mongorc.js
    ../../.node_repl_history
    ../../.oracle_jre_usage/
    ../../.ssh/
    ../../.thumbnails/
    ../../.vim/
    ../../.viminfo
    ../../AppData/
    ../../Contacts/
    ../../Desktop/
    ../Thumbs.db
    ../desktop.ini
    ../forge.aup
    ../hp.system.package.metadata/
    ../../Downloads/
    ../../Dropbox/
    ../../Favorites/
    ../../Helper/
    ../../IntelGraphicsProfiles/
    ../../Links/
    ../../MongoDB/
    ../../Music/
    ../../OneDrive/
    ../../Pictures/
    ../../Saved Games/
    ../../Searches/
    ../../Videos/
    nothing added to commit but untracked files present

似乎大多數人在這里都沒有找到問題的症結所在,所以我要補充一點:

您想知道為什么它會將項目目錄外的內容列出為未跟蹤。 正如axiac所觀察到的,這很可能意味着.git文件夾在錯誤的位置。 .git文件夾包含所有元數據和特定於存儲庫的配置,以及索引和數據庫的狀態(依次包含版本歷史記錄等)。

當您在給定的工作目錄中並運行git命令(如果它是一個希望您位於存儲庫中的命令...多數情況下)時,它將在該目錄中查找.git文件夾; 然后,如果找不到該目錄,則檢查父目錄,依此類推,直到找到一個目錄或到達文件系統根目錄為止。 如果找不到一個,則會報錯,但是如果找到一個,則會將其作為存儲庫默認工作樹的根。 (在某些情況下,此描述不適用,但應適用於您的情況。)

因此, .git/可能在錯誤的位置。 但這又引發了一個問題:為什么git不認為您已經刪除了它已經知道的所有內容?

當然,如果這是您剛剛創建的新存儲庫,那就可以解釋了。 但是如果還有其他事情,git應該列出從先前提交中刪除的所有文件,以及未跟蹤的更改。 (至少,如果執行git status ,應該會。

那么下一步該怎么做:

如果要創建新的倉庫,最好從文件系統根目錄中刪除.git/ ,將其cd到項目目錄中,然后重新運行git init

如果這是現有的存儲庫,請嘗試運行git status以確認它將所有未刪除的內容以及所有頂級文件/文件夾都視為未跟蹤的文件。 如果是這樣,您肯定需要將文件系統根目錄中的.git/移動到項目目錄。

然后,您應該能夠照常上演並提交更改。

“未添加任何內容提交”消息是指已添加的空目錄。 GIT管理文件的版本,而不是目錄。 當您在其中一個目錄中git添加文件時,您會看到它們被列為“新文件:...”。 “存在的未跟蹤文件”是指尚未運行git add的“ ../Thumbs.db”。 除非文件已“添加”到GIT維護的索引中,否則文件不會被GIT“跟蹤”。

如果要提交所有文件,請嘗試以下命令

git add ../../.

git commit -m "commit message"

根據您的問題,您可能在回購路徑的兩個子目錄中並執行git命令

初始化項目存儲庫是很好的,因此從根目錄中刪除.git文件夾,並將目錄更改為項目路徑,然后通過git init初始化git repo,謝謝@MarkAdelsberger

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM