如何將檔案新增至 .gitignore 以及為什麼在使用來源樹忽略檔案後 .gitignore 檔案內容沒有改變?

如何將檔案新增至 .gitignore 以及為什麼在使用來源樹忽略檔案後 .gitignore 檔案內容沒有改變?

我想忽略整個資料夾,因為我在資料夾中發現.vs了鎖定/權限被拒絕的錯誤,因此我使用以下 bash 命令建立了一個檔案:sqlite3/db.lock.vs.gitignore

touch .gitignore

然後在 .gitignore 檔案中加入這一行:

.vs/*

但當我運行時仍然遇到同樣的錯誤git add --all

最後,我打開 Sourcetree 應用程序,.vs透過右鍵單擊文件並選擇忽略來忽略資料夾內容,然後我設法添加所有文件,提交並推送(透過 Sourcetree 應用程式)。

對此解決方案不滿意,因為我想透過命令列完成所有操作。現在我想知道為什麼 gitignore 內容沒有改變,如果我應該透過 Sourcetree 來操作它?我怎樣才能添加文件到.gitignore?我所做的似乎沒有任何效果(事實上我添加了 line .vs/*

答案1

你所做的事情產生了效果。即所有未來更改將被忽略。

這裡的問題是,當您向其中添加文件時,.gitignore您所做的任何更改都將忽略它們,但它們仍將保留在存儲庫中。您需要做的是從 git 中刪除所有內容並再次新增它們。這樣您想要忽略的檔案就不會被加入。

您可以使用以下命令來執行此操作:

git rm -r --cached .
git add .
git commit -m ".gitignore fix"

參考:http://www.codeblocq.com/2016/01/Untrack-files-already-added-to-git-repository-based-on-gitignore/

相關內容