git取消檔案跟蹤

2022-05-13 13:22:18 字數 1223 閱讀 4039

在使用git的時候,有些檔案是不需要上傳的,所以就可以修改   .gitignore 

例如:如果是對所有檔案都取消跟蹤的話,就是

git rm -r --cached .   //不刪除本地檔案

git rm -r --f .   //刪除本地檔案

對某個檔案取消跟蹤

git rm --cached readme1.txt    刪除readme1.txt的跟蹤,並保留在本地。

git rm --f readme1.txt    刪除readme1.txt的跟蹤,並且刪除本地檔案。

然後git commit 即可。但是git status檢視狀態時還是會列出來

每次使用git status 檢視狀態時總是會列出被跟蹤的檔案,可以通過 .gitignore檔案來達到目的

在git init 的目錄下建立.gitignore檔案,git官方提供的有 該檔案,可以加以修改使用

例:

這樣被濾掉的檔案就不會出現被上傳

.gitignore 還可以指定將哪些檔案新增到版本管理中:

在上面的語法前面加上   !         即可

千萬要注意:

如果你在建立.gitignore檔案之前就已經push專案了,那麼即時你在.gitignore檔案中寫入新的規則,這些規則也不會起作用。

有時候在專案開發過程中,突然心血來潮想把某些目錄或檔案加入忽略規則,按照上述方法定義後發現並未生效,原因是.gitignore只能忽略那些原來沒有被track的檔案,如果某些檔案已經被納入了版本管理中,則修改.gitignore是無效的。那麼解決方法就是先把本地快取刪除(改變成未track狀態),然後再提交:

git rm -r --cached .

git add .

git commit -m 'update .gitignore'

如果還是不行的話

在先將想要取消追蹤的檔案移到專案目錄外),並提交,然後提交後再將剛剛移出的檔案再移入專案中即可

注意:不要誤解了 .gitignore 檔案的用途,該檔案只能作用於 untracked files,也就是那些從來沒有被 git 記錄過的檔案(自新增以後,從未 add 及 commit 過的檔案)。

如果檔案曾經被 git 記錄過,那麼.gitignore 就對它們完全無效。

本文參考1:

本文參考2:

git 取消檔案跟蹤 git 取消原有檔案索引

本地所有檔案 git rm cached readme1.txt 刪除readme1.txt的跟蹤,並保留在本地。git rm f readme1.txt 刪除readme1.txt的跟蹤,並且刪除本地檔案。資料夾 如果是對所有檔案都取消跟蹤的話,就是 git rm r cached 不刪除本地檔案...

git取消跟蹤檔案目錄

git倉庫第一次提交的時候,將部分不想跟蹤的檔案 資料夾也是檔案的一種 新增到根目錄下.gitignore中可以讓git不跟蹤檔案 然後add commit一切都是正常的。但是當檔案和目錄已經被提交到倉庫中,我想取消跟蹤檔案和目錄可以麼,潛意識中我是認為不可以的,甚至於去年還和同事爭論過已經加入版本...

停止git上傳 git取消檔案跟蹤

在使用git的時候,有些檔案是不需要上傳的,所以就可以修改 gitignore 例如 如果是對所有檔案都取消跟蹤的話,就是 git rm r cached 不刪除本地檔案 git rm r f 刪除本地檔案 對某個檔案取消跟蹤 git rm cached readme1.txt 刪除readme1....