這是一個在流浪漢中的巨大痛苦。我之前有過幾次,我不明白爲什麼。 5分鐘前,回購工作良好,我工作的時候,我移動了一些文件(這是很酷的,所有的都很酷),而Git則用它的褲子。任何想法爲什麼發生這種情況我該如何解決它克隆回購,移動文件等...爲什麼我會得到「致命的:git status - 瓷器失敗」?
回答
哦,親愛的,我是這樣的失敗。它看起來像這個問題從Flash Builder複製比其他git的回購成子文件夾梗。答案是刪除所有不是回購協議的.git文件夾。
我的回購中沒有任何.git文件夾,但隨時將我的新文件複製到我的文件夾中以更新我的應用程序,我仍然收到索引損壞的瓷器失敗錯誤。我不明白如何更新文件會破壞這個或如何解決它。任何人都有進一步的見解呢?
萬一它幫助別人,我只是遇到了同樣的問題,發現在項目根目錄下運行git init
修復了它。
我遇到了這個錯誤,因爲損壞/未正確初始化的子模塊(使用它自己的.git子文件夾)。我暫時刪除了子模塊文件夾,並在主項目的根目錄中使用了git init
。解決了我的問題。
這也是我的原因,但除了刪除子模塊文件夾外,我還必須重新運行'git submodule init && git submodule update'。 – starkos 2017-03-29 12:22:35
我有同樣的問題。在我的根項目的目錄中運行git status
產生以下錯誤:
fatal: This operation must be run in a work tree
fatal: 'git status --porcelain' failed in submodule js/object-subscribe
在受影響的子模塊(js/object-subscribe
)運行git status
會產生這樣的錯誤:
fatal: This operation must be run in a work tree
在該子模塊的文件夾中運行git init
爲我做。
通常,蠢貨,項目的根目錄(git的/)
當你在一個CMS的工作,它可能在安裝模塊/插件攜帶的.git /目錄中的git對元數據創建了一個隱藏目錄具體的模塊/插件
如果你不想使用git的子模塊的功能,最快的解決辦法刪除除根git的元數據目錄下的所有目錄中的.git。 如果這樣做,git將不會將這些模塊視爲項目子模塊。
cd /path/to/your/project/code
find ./ | grep ".git/index"
位於刪除一旦「git的」除了根一個所有目錄,但如果你刪除它初始化回購再次
我知道這是一個古老的線程,但我有同樣的問題,最終以不同的方式解決。 git init
沒有爲我工作。 張貼在這裏,以防其他人有用。
我的存儲庫有兩個子模塊。 墊底之後,我開始收到錯誤致命: - 陶瓷失敗 git的狀態。
解決方案是驗證每個子模塊config
文件中的屬性worktree
- 例如, <repository-checkout>/.git/modules/<submodule-name>/config
。
我有一個worktree
屬性的無效路徑。它鏈接到已更改併合併到master
的未存在文件夾 - 可能是由於解決衝突時出錯。
.git
是子模塊中的文件,並指向位於根目錄.git
目錄中的目錄。
在我的情況下,我在docker中掛載了一個git目錄,並在那裏檢查狀態。這個子模塊的.git文件包含一個在docker中無效的絕對路徑。我編輯了這個.git
文件到更改gitdir路徑爲相對路徑。
Git版本:2.7.4
在我的情況下,使用git mv moduleA moduleB
用git 2.12.2移動moduleA/mySubmodule
到moduleB/mySubmodule
後,我跑進follwoing錯誤:
$ git status
fatal: Could not chdir to '[../]moduleA/mySubmodule': No such file or directory
fatal: 'git status --porcelain' failed in submodule mySubmodule
fatal: 'git status --porcelain' failed in submodule moduleB
然後我做的follwing(也許在沒有這個順序)
- 手動更新
.gitmodules
進入moduleB
- 輸入
.git/modules
和重命名舊模塊文件夾 - 輸入
moduleB
和刪除文件夾的子模塊 - 運行
git submodule sync
和git submodule update
在那之後,我可能沒有問題再次運行git status
。
- 1. 爲什麼我的「git push」到遠程git項目失敗
- 2. 爲什麼'git status'運行過濾器?
- 3. 爲什麼被拒絕的git push不會顯示在'git status'中?
- 4. git status和git diff空失敗後git我
- 5. git-gui不同意git status:爲什麼?
- 6. 爲什麼打開@Cacheable會導致我的事務失敗?
- 7. git:「致命:執行內部合併失敗」是什麼意思?
- 8. '致命:櫻桃挑選失敗'與Git
- 9. 爲什麼將EmailAddressAttribute添加到屬性會導致EditorFor失敗?
- 10. SQLiteOpenHelper.onUpgrade爲什麼會失敗?
- 11. 爲什麼這會失敗
- 12. 爲什麼斜線字符會導致我的選擇器失敗?
- 13. 什麼會導致遊標失敗?
- 14. 爲什麼我的匹配器失敗?
- 15. 爲什麼我得到錯誤:命令'llvm-gcc-4.2'失敗,退出狀態1
- 16. 爲什麼我會得到一個GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT?
- 17. 爲什麼我不能得到be_nil試驗Rspec的失敗
- 18. 爲什麼我的PLSQL觸發器驗證不會失敗?
- 19. Django - 爲什麼我得到這個IntegrityError:NOT NULL約束失敗:restaurants_restaurantlocation.owner_id?
- 20. 爲什麼我得到一個C malloc斷言失敗?
- 21. 爲什麼我會得到「TypeError:input.match(...)爲null」?
- 22. 爲什麼我的BigInteger.add()會得到NullPointerException?
- 23. 爲什麼這段代碼會失敗或不會失敗?
- 24. 'git status'命令的對面
- 25. Cvs2svn轉換失敗,Status = 1
- 26. 爲什麼我會得到java.lang.OutOfMemory錯誤?
- 27. 什麼是「嵌套量化器」,爲什麼它會導致我的正則表達式失敗?
- 28. 爲什麼使用Frameset DTD會導致驗證失敗?
- 29. 什麼會導致HashMap containsKey()失敗並以String爲關鍵字?
- 30. 爲什麼C#ProcessStartInfoRedirectStandardOutput會導致xcopy進程失敗
我不知道我仍然有一些與舊的子模塊相關的.git相關文件 - 在我刪除它們之後,我又回到了黑色。 – electblake 2012-10-11 05:11:14
實際上,可能需要從'vendor'文件夾中移除僅有問題的依賴關係的'.git'文件夾。 在目標repo通過一些重新綁定之後,發生了'@ dev'依賴關係。 – hejdav 2015-06-04 07:08:05