2015-10-13 37 views
-2

我使用'git push'命令將文件夾推送到GitHub。它在我的克隆目錄中打開。但是當我嘗試在GitHub上訪問它時,它會顯示一個不同的圖標,並且不會在單擊時打開。因此,我甚至無法刪除它。我該如何解決這個問題?我上傳了GitHub上的一個文件夾。它在Git中打開,但不在GitHub上

+0

git只關心文件(不是文件夾),你是什麼意思「推送文件夾」? – topheman

+0

什麼是URL? – melpomene

+1

@topheman,此外'push'在*提交*上運行,而不是文件或文件夾。 – Chris

回答

0

他們灰色圖標,你看到指示a submodule

子模塊讓你保持一個Git倉庫的另外一個Git倉庫的子目錄。這可以讓您將另一個存儲庫克隆到您的項目中,並保持您的提交單獨。

子模塊通常用於庫代碼。

根據your Bitbucket comment您可能會看到這個,因爲您將另一個存儲庫克隆到主存儲庫中。 Git存儲庫不能任意嵌套;還需要額外的工作流程步驟。

有可能convert a submodule to a regular directory,但在你衝下那條路徑之前,你應該花幾分鐘時間來了解子模塊是什麼,看看它們是否適合你的用例。使用它們具有真正的好處(例如,能夠在內部和外部存儲庫上工作,同時仍能夠對上游存儲庫使用pushfetch)。

值得注意的是,一些開發人員強烈不喜歡子模塊(儘管在很多情況下,這可能直接關係到他們如何工作的誤解)。還有其他的工具可以讓你做類似的事情,例如git subtree

我認爲您的下一步應該是瞭解您的選擇(使用子模塊,使用子樹或將內部存儲庫轉換爲常規目錄)。在做出決定之前瞭解每個人的權衡很重要。

0

存儲庫中的一個目錄包含一個'.git'文件夾。只要您在其中運行'git init'命令,該文件夾就會在目錄中創建。 Git存儲庫中的Git存儲庫會混淆Git,併發生這種行爲。