1. 程式人生 > >執行git add . 後仍然報changes not staged for commit錯誤的解決方法

執行git add . 後仍然報changes not staged for commit錯誤的解決方法

如果你的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 . 命令來提交內容了。