執行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 . 命令來提交內容了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章