git倉庫第一次提交的時候,將部分不想跟蹤的檔案(資料夾也是檔案的一種),新增到根目錄下.gitignore中可以讓git不跟蹤檔案;然後add、commit一切都是正常的。
但是當檔案和目錄已經被提交到倉庫中,我想取消跟蹤檔案和目錄可以麼,潛意識中我是認為不可以的,甚至於去年還和同事爭論過已經加入版本控制的檔案再新增到.gitignore中是沒有效果的,專案比較感,只是他實現了,我沒問是怎麼做到的。其實我也完全沒說錯~至少是已經跟蹤的檔案,再新增的.gitignore中這樣是不能使得git不跟蹤檔案的。
最近需要解決這個問題,好生的上網查了下,發現是可以取消git跟蹤檔案
網上大部分都說
git rm -r -n --cached 檔案/或者是目錄 【不會刪除檔案,只是列出會被刪除的列表】
git rm -r --cached 檔案/或者是目錄
git commit -m "描述資訊"
試了好幾次,都沒成功,也許是我的理解能力不夠,現記錄一次。
-r 表示遞迴
-n 表示先不刪除,只是列出檔案
1.首先 git rm -r -n --cached 檔案
只是為了列出你需要取消跟蹤的檔案,可以檢視列表,檢查下是否有誤操作導致一些不應該被取消的檔案取消了,是為了再次確認的。
2. git rm -r --cached 檔案
才是真正的取消快取不想要跟蹤的檔案
3.在本地倉庫的根目錄下新建.gitignore 檔案。 vi .gitignore
新增你希望忽略的檔案/目錄
gitignore檔案配置記得不是太詳細,有需要再查詢
4.git commit
提交後,在2步中希望忽略的檔案和目錄,就不會再
5.git push origin
這時候我再修改 d1/2.txt,d1目錄下再新建檔案,使用 git status檢視終於不再提示,有暫存區未被提交的檔案了。
git取消檔案跟蹤
在使用git的時候,有些檔案是不需要上傳的,所以就可以修改 gitignore 例如 如果是對所有檔案都取消跟蹤的話,就是 git rm r cached 不刪除本地檔案 git rm r f 刪除本地檔案 對某個檔案取消跟蹤 git rm cached readme1.txt 刪除readme1....
git 取消檔案跟蹤 git 取消原有檔案索引
本地所有檔案 git rm cached readme1.txt 刪除readme1.txt的跟蹤,並保留在本地。git rm f readme1.txt 刪除readme1.txt的跟蹤,並且刪除本地檔案。資料夾 如果是對所有檔案都取消跟蹤的話,就是 git rm r cached 不刪除本地檔案...
停止git上傳 git取消檔案跟蹤
在使用git的時候,有些檔案是不需要上傳的,所以就可以修改 gitignore 例如 如果是對所有檔案都取消跟蹤的話,就是 git rm r cached 不刪除本地檔案 git rm r f 刪除本地檔案 對某個檔案取消跟蹤 git rm cached readme1.txt 刪除readme1....