[英].gitignore not ignoring node_modules
即使在將.gitignore
文件添加到.git
存儲庫的根目錄后,我也無法讓 git 忽略node_modules
目錄。
Git的文件還沒有添加到追蹤。
我已經完成了較早的堆棧溢出問題,並且還嘗試在第一行添加注釋行,因為顯然 Git 沒有讀取該文件的第一行,而且它仍然不起作用。 我也嘗試使用以下命令,但無濟於事:
git rm --cached -r .
誰能幫幫我? .gitignore
的內容:
#first line
node_modules/
即使將 .gitignore 文件添加到 .git 存儲庫的根目錄后,我也無法讓 git 忽略 node_modules 目錄。
.gitignore
文件應放置在工作樹的根目錄(也稱為項目的根目錄)中,該目錄位於.git
目錄的正上方。 在.git
目錄中,該文件無效。
這是有道理的,因為通常您希望將此文件置於版本控制之下,以便與項目的所有開發人員共享被忽略文件的列表。 並且只有工作樹內部的文件, .git
之外的文件處於版本控制之下, .git
目錄用於 Git 的內部存儲。
(如果您只想在本地忽略模式,而不添加到版本控制,您可以通過在.git/info/exclude
定義模式來實現。)
[...] 並且還嘗試在第一行添加注釋行,因為顯然 Git 沒有讀取該文件的第一行
作為記錄,它也讀取了第一行, .gitignore
的第一行沒有什么特別之處。
我通過刪除.gitignore
處的文件名解決了這個問題,並將其分別設置為一個不可見的文件和點文件,就像將文件命名為.gitignore
並保留表達式一樣
node_modules/
在那個文件中,這樣就可以了,現在 git 最終忽略了 node-modules 目錄。 不確切知道為什么這有效,但至少確實如此。
我不知道這是否會對任何人有所幫助,但我在 PS 中使用 echo "" > .gitignore 創建了我的 .gitignore 文件,因此編碼設置為 UTF-16LE 而不是 UTF-8。 這導致 .gitignore 無法正常工作。
就我而言,我用這樣的引號寫了它
'functions/node_modules/'
代替
functions/node_modules/
就我而言,通過將文件編碼從“Unicode”轉換為“UTF-8 without BOM”來解決,因為我通過 Powershell 通過重定向輸出創建了.gitignore
文件。
最初我將行尾從 Windows (CRLF) 更改為 Linux (LF),但沒有幫助。
如果一切都失敗了,你可能想試試這個。 我遇到了同樣的問題,但沒有任何效果。
刪除您的 node_modules 文件夾。 將更改推送到 github(如果您需要從 repo 中刪除 node_modules 文件夾)確保您在 .gitignore 文件中有 node_modules/ 行運行 npm install。 再推。
我在 Visual Studio Code 下工作,注意到你必須在運行 npm install 之前制作 gitignore 文件。 不知道為什么,但它在我的情況下修復了它。
我的項目結構如下:
project_name
|
|__ client
| |_ node_modules/
|
|__ server
$ sudo nano .gitignore
Changed # dependencies
/node_modules to client/node_modules
$ git add . /* to add modified gitignore file */
$ git status /* to observe changes */
就我而言,我創建了兩個“.gitignore”文件,一個在主目錄中,第二個在客戶端文件夾中
確保文件末尾總是有一個新行。 如果您在node_modules/
聲明之后忘記了一個,可能對您有所幫助。
我刪除了我的 node_modules 文件夾並提交了我的更改。 然后我復制了我的 .gitignore 文件的內容並將其刪除。 重新創建文件,粘貼回我的剪貼板內容並運行npm i 。 修復了問題。 我猜如果您在 VM 或遠程桌面上工作並且使用 Windows 而不是將 repo 帶到 mac 上,則可能會導致如上所述的編碼錯誤。
簡而言之:
復制 .gitignore 內容
刪除 .gitignore
重新創建 .gitignore
粘貼到剪貼板。
瞧
我所做的只是刪除.git/和node_modules/文件夾,然后重新執行命令
git init
git add .
...等等,然后我毫無問題地推動了我的目錄。
在我的例子中,它是“node_modules/”而不是“node_modules/”,node_modules 之前的空間是問題所在
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.