如果你的git倉庫下面還有另外一個clone過來的git倉庫,那麼當你正常git add . 然後git commit的時候一定會得到如下圖的報錯:
並且上傳到倉庫的文件夾是空的
這個時候如果你去網上查找解決方案,可能10個人有九個人會告訴你是因爲commit之前沒有執行git add導致的,最後一個人可能知道原因,但是提供的方法可能並不能很好的解決問題
這裏給出完整的解決方案:
1、先強行刪除clone來的目錄下的 .git 文件夾
刪除方式:在該目錄下打開命令行工具,執行 rd/s/q .git命令
刪除成功後執行ls .git命令提示如下內容說明刪除成功
2、回到倉庫根目錄刪除倉庫中的空文件夾
1)git rm -r --cached "themes/materail"
2)git commit -m "remove empty folder"
3)git push origin master
3、在倉庫根目錄重新提交代碼
1)git add .
2)git commit -m "repush"
3)git push origin master
這樣就能保證不會報上面的錯,並且刪除了空文件夾,重新把clone下來的目錄上傳到了倉庫中
最後解釋一下出現這種情況的原因:
由於你 clone 下來的文件夾也是一個 git 倉庫,因此正常的 git add . 是無法提交該文件夾下的文件的,所以我們要做的就是刪除文件夾下的 .git 文件夾,這樣就可以通過 git add . 命令來提交內容了。